all gone

          all gone

          #

          Eclipse下Struts開發入門

           

          1.開發環境
             開發之前首先應該準備好開發環境,Eclipse 3.X是一個不錯的Java IDE,有很多插件可以供我們選擇,服務器用Tomcat就行了。安裝好Eclipse和Tomcat之后,還需要兩個插件:tomcat 插件和Struts插件,以下是相關下載地址:
               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
          然后運行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結合可以提供跨平臺的服務。
                 編程的人總有這么一個愛好,開始的時候總要拿一個HelloWorld似的例子試試,我也不例外。 要試當然要有SOAP的運行環境。按照書上的指示,裝好了Tomcat,下載了相關的包,將soap.jar ,mail.jar,activatio.jar,xercesImpl.jar 加入到了環境變量classpath中,將soap.war拷貝到了TOMCAT的webapps目錄下。
                 運行SOAP的測試目錄:HTTP://127.0.0.1:8080/soap/發現soap已經正常工作。 接著便是部署新的SOAP服務了,按照書上的源碼,寫好了測試用的部署類和客戶端類,編譯通過。在部署新的SOAP的web頁面下按照書上的步驟添好表單并部署完成。將測試所在目錄添加到classpath中。 重啟tomcat。 運行剛才編譯好的客戶端類,結果NoClassDefError。
                 試了好幾遍,都是這樣,很是讓我郁悶啊。 看了另一本書《java web服務應用開發詳解》終于找到了答案: 運行客戶端測試程序時,***Client.class是在Package test中的 運行時退回到test的上級目錄,java test.***Client 即可。 我想遇到類似問題,還是對java的包不熟悉。

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

          僅列出標題
          共17頁: First 上一頁 7 8 9 10 11 12 13 14 15 下一頁 Last 
          主站蜘蛛池模板: 胶州市| 阜新| 长丰县| 株洲县| 鄂托克前旗| 汉源县| 陆丰市| 准格尔旗| 肥西县| 江山市| 乐安县| 扶风县| 天全县| 石棉县| 登封市| 炎陵县| 黄石市| 黄浦区| 丹东市| 略阳县| 建德市| 财经| 英德市| 同江市| 二手房| 普兰店市| 眉山市| 宁晋县| 金乡县| 张北县| 白城市| 枝江市| 四会市| 广灵县| 全椒县| 剑川县| 达日县| 德庆县| 四会市| 淮南市| 梨树县|