<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    all gone

    all gone

    #

    Eclipse下Struts開發(fā)入門

     

    1.開發(fā)環(huán)境
       開發(fā)之前首先應(yīng)該準(zhǔn)備好開發(fā)環(huán)境,Eclipse 3.X是一個不錯的Java IDE,有很多插件可以供我們選擇,服務(wù)器用Tomcat就行了。安裝好Eclipse和Tomcat之后,還需要兩個插件:tomcat 插件和Struts插件,以下是相關(guān)下載地址:
         Eclipse SDK:
            http://www.eclipse.org/downloads/index.php
        Struts:
         https://sourceforge.jp/projects/amateras/files/         StrutsIDE+htmlEditor,htmlEditer也是必要的
        Tomcat :
             http://www.sysdeo.com/eclipse/tomcatplugin
        Plugin Search:
             http://eclipse-plugins.2y.net/eclipse/search.jsp
       插件的安裝和配置有問題請直接Google。
    2.開始
        入門嘛,我們就找一個最簡單的Login就可以了

        新建Tomcat project,如下圖

        加入struts支持
        新建一個FormBean:LoginForm


    /**
     *
     */
    package com.test;

    import javax.servlet.http.HttpServletRequest;

    import org.apache.struts.action.ActionErrors;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.action.ActionMessage;

    /**
     * @author lzy
     *
     */
    public class LoginForm extends ActionForm {

     private String name=null;
     private String password=null;
     /* (non-Javadoc)
      * @see org.apache.struts.action.ActionForm#reset(org.apache.struts.action.ActionMapping, javax.servlet.http.HttpServletRequest)
      */
     @Override
     public void reset(ActionMapping arg0, HttpServletRequest arg1) {
      // TODO Auto-generated method stub
      name=null;
      password=null;
     }
     /* (non-Javadoc)
      * @see org.apache.struts.action.ActionForm#validate(org.apache.struts.action.ActionMapping, javax.servlet.http.HttpServletRequest)
      */
     @Override
     public ActionErrors validate(ActionMapping arg0, HttpServletRequest arg1) {
      // TODO Auto-generated method stub
    ActionErrors errors=new ActionErrors();
      
      if(name==null||name.length()<1){
       errors.add("username",new ActionMessage("errors.login.name.empty"));
       
      }
      if(password==null||password.length()<1){
       errors.add("password",new ActionMessage("errors.login.password.empty"));
       
      }
      
      return errors;
     }
     /**
      * @return Returns the name.
      */
     public String getName() {
      return name;
     }
     /**
      * @param name The name to set.
      */
     public void setName(String name) {
      this.name = name;
     }
     /**
      * @return Returns the password.
      */
     public String getPassword() {
      return password;
     }
     /**
      * @param password The password to set.
      */
     public void setPassword(String password) {
      this.password = password;
     }
    }

     

     

         新建一個Action:LoginAction

    /**
     *
     */
    package com.test;


    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
    import org.apache.struts.*;
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;
    import org.apache.struts.action.ActionMessage;
    import org.apache.struts.action.ActionMessages;

    /**
     * @author lzy
     *
     */
    public class LoginAction extends Action {
     public ActionForward execute(ActionMapping mapping, ActionForm actionForm, HttpServletRequest request, HttpServletResponse response) throws Exception {
      // TODO Auto-generated method stub
      LoginForm loginForm=(LoginForm)actionForm;
      String name=loginForm.getName();
      String password=loginForm.getPassword();


     if(name.equals("name")&&password.equals("password")){
       HttpSession session=request.getSession(true);
       session.setAttribute("LOGGED_USER",name);

       
       return mapping.findForward("success");
       
      }
      else{
       ActionMessages errors=new ActionMessages();
       errors.add("login.failure",new ActionMessage("errors.login.failure")); 
       this.saveErrors(request,errors);
       
       return mapping.findForward("failure"); 
       
      }
      
     }

    }

         新建兩個JSP頁面,login.jsp,index.jsp

    login.jsp
    <%@ page contentType="text/html; charset=GBK" %>
    <%@ taglib uri="/tags/struts-html" prefix="html" %>
    <%@ taglib uri="/tags/struts-tiles" prefix="tiles" %>

    <html:html>
     <head>
      <html:base />
              </head>
     <body>
     <center>
     <html:errors />
      <html:form action="/login.do" method="POST">
      <table border="1">
       <tr>
        <td colspan="2"><bean:message key="login.jsp.form.title"/></td>
       </tr>
       <tr>
        <td align="right"><bean:message key="login.jsp.name"/></td>
        <td><html:text property="name" size="20"></html:text></td>
       </tr>
       <tr>
        <td align="right"><bean:message key="login.jsp.password"/></td>
        <td><html:password property="password" size="20"></html:password></td>
       </tr>
       <tr>
        <td colspan="2">
         <html:submit><bean:message key="form.submit"/></html:submit>
         <html:reset><bean:message key="form.reset"/></html:reset>
        </td>
       </tr>
     
      </table>
     
      </html:form>
      
     </center>
     </body>
    </html:html>


    index.jsp


    <%@ page contentType="text/html; charset=GBK" %>
    <%@ taglib uri="/tags/struts-bean" prefix="bean" %>
    <%@ taglib uri="/tags/struts-logic" prefix="logic" %>
    <%@ taglib uri="/tags/struts-html" prefix="html" %>
    <%@ taglib uri="/tags/struts-nested" prefix="nested" %>

    <html:html>
     <head>
      <meta http-equiv="Content-Type" content="text/html; charset=GBK"/>
      <title></title>
     </head>
     <body>
     hello
      <logic:present name="LOGGED_USER">,<bean:write name="LOGGED_USER"/>
      </logic:present>
     </body>
    </html:html>


         編輯WEB-INF/lib下的struts-config.xml

    struts-config.xml

    <?xml version="1.0"?>
    <!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "<struts-config>
      <data-sources>
      </data-sources>
      <form-beans>
        <form-bean name="loginForm" type="com.lzy.LoginForm"/>
      </form-beans>
      <global-exceptions>
      </global-exceptions>
      <global-forwards>
      </global-forwards>
      <action-mappings>
          <action path="/login" name="loginForm" type="com.lzy.LoginAction" scope="session" validate="true" input="/login.jsp">
          <forward name="failure" path="/login.jsp"/>
          <forward name="success" path="/index.jsp"/>
        </action>
      </action-mappings>
      <controller processorClass="org.apache.struts.tiles.TilesRequestProcessor"/>
      <message-resources parameter="MessageResources"/>

    </struts-config>


           最后是資源文件

    # -- standard errors --
    errors.header=<UL><font color="red"><h2>Errors:</h2>
    errors.prefix=<LI>
    errors.suffix=</LI>
    errors.footer=</font></UL><hr>


    form.submit=Submit

    form.reset=Reset


    # -- login.jsp --
    login.jsp.title=Login
    login.jsp.form.title=Login
    login.jsp.name=Name:
    login.jsp.password=Password:

    # -- login errors --
    errors.login.name.empty=The name can not be empty!
    errors.login.password.empty=The password can not be empty!
    errors.login.failure=Login failed!<br> Please check your username and password!

     

    3.測試
    在test工程中選擇tomcat project->Update context definition
    然后運(yùn)行Tomcat
    http://127.0.0.1:8080/test/login.jsp


      

    posted @ 2005-12-10 11:10 all gone 閱讀(1216) | 評論 (0)編輯 收藏

    Java Web Service 之SOAP入門

          這幾天在圖書館看到了一本書《Java SOAP編程指南》,出于對正興起的web service的好奇,借了回來。看了一下SOAP的介紹,沒太明白,只知道是Simple Object Access Protocol,和XML結(jié)合可以提供跨平臺的服務(wù)。
           編程的人總有這么一個愛好,開始的時候總要拿一個HelloWorld似的例子試試,我也不例外。 要試當(dāng)然要有SOAP的運(yùn)行環(huán)境。按照書上的指示,裝好了Tomcat,下載了相關(guān)的包,將soap.jar ,mail.jar,activatio.jar,xercesImpl.jar 加入到了環(huán)境變量classpath中,將soap.war拷貝到了TOMCAT的webapps目錄下。
           運(yùn)行SOAP的測試目錄:HTTP://127.0.0.1:8080/soap/發(fā)現(xiàn)soap已經(jīng)正常工作。 接著便是部署新的SOAP服務(wù)了,按照書上的源碼,寫好了測試用的部署類和客戶端類,編譯通過。在部署新的SOAP的web頁面下按照書上的步驟添好表單并部署完成。將測試所在目錄添加到classpath中。 重啟tomcat。 運(yùn)行剛才編譯好的客戶端類,結(jié)果NoClassDefError。
           試了好幾遍,都是這樣,很是讓我郁悶啊。 看了另一本書《java web服務(wù)應(yīng)用開發(fā)詳解》終于找到了答案: 運(yùn)行客戶端測試程序時,***Client.class是在Package test中的 運(yùn)行時退回到test的上級目錄,java test.***Client 即可。 我想遇到類似問題,還是對java的包不熟悉。

    posted @ 2005-12-09 19:39 all gone 閱讀(620) | 評論 (0)編輯 收藏

    僅列出標(biāo)題
    共17頁: First 上一頁 7 8 9 10 11 12 13 14 15 下一頁 Last 
    主站蜘蛛池模板: 99在线在线视频免费视频观看| 人妻视频一区二区三区免费| 78成人精品电影在线播放日韩精品电影一区亚洲 | 亚洲欧洲另类春色校园网站| 国产一级高清免费观看| 国产午夜无码精品免费看动漫| 亚洲日韩在线视频| 亚洲欧洲精品成人久久曰影片 | 亚洲妓女综合网99| 免费又黄又爽又猛的毛片| 黄网站色视频免费在线观看的a站最新| 亚洲另类小说图片| 亚洲婷婷国产精品电影人久久| 最近2022中文字幕免费视频| 综合一区自拍亚洲综合图区| 亚洲成a人片在线观看中文动漫| 在线免费观看中文字幕| 国产精品偷伦视频观看免费| 欧洲亚洲国产精华液| 亚洲午夜久久久精品影院| 四虎影库久免费视频| 777爽死你无码免费看一二区| 日本一区二区三区在线视频观看免费| 亚洲精品亚洲人成在线观看麻豆 | 永久免费视频网站在线观看| 日本精品久久久久久久久免费| 亚洲成A人片在线播放器| 香蕉蕉亚亚洲aav综合| 亚洲精品第一国产综合精品99| 成人爽A毛片免费看| 8x8×在线永久免费视频| 91免费福利视频| 一级做a爰片久久毛片免费陪 | 无人在线观看完整免费版视频| 国产在线观看xxxx免费| 另类图片亚洲校园小说区| 亚洲不卡中文字幕| 91亚洲一区二区在线观看不卡| 亚洲国产精品成人精品无码区 | 久草免费在线观看视频| 青柠影视在线观看免费高清 |