`

利用Myeclipse快速开发struts应用程序

阅读更多
本文是myeclipse帮助文档的中文简化版。 ^___^
本人是struts初学者,如有错误请多指教。
 

开发环境:
jdk5.0
eclipse3.1M7 (观众问:为啥还在用eclipse3.1M7呢?答曰:没办法,偶奶奶家还是拨号上网。^*^)
myeclipse3.84
tomcat5.0.28

 

简介:
文本主要介绍用myeclipse的struts designer(图形化开发环境)开发一个简单的用户登录程序片段。
主要包括2个jsp文件、一个ActionForm、一个Action等其它
userLogin.jsp(用户登录及错误提示页面) userLoginSuccess.jsp(提示登录成功页面)
UserLoginForm.java(ActionForm,存放用户提交信息)
UserLoginAction.java(Action,简单的处理用户登录事件)

 
开始吧

首先我们先建立一个j2ee的web project.如图1:
o_1.JPG

点击next,Project name输入LoginDemo,其余保持默认,点击finish.
在package explorer下,就可以看到我们的项目了,然后给这个项目添加Struts框架必要的文件.在我们项目名上点击右键,选择MyEclipes --> Add Struts Capabilities...弹出对话框图2:
o_2.JPG
其中Struts config path就是我们的struts配置文件,URL pattern我们选择*.do,Default application resource为我们默认的资源文件地方,你可以选择它的存储位置,我们在这里保持默认。点击Finish后,项目结构类似于图3:
o_3.JPG

现在就来开始我们的例子吧。首先修改/WEB-INF/web.xml文件,为其添加标签库(在使用中发现,不添加也能成功。但为了保持书上一致,还是添加安全些。hoho~~)将下面代码添加至 </webapp> 上面:

<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>

<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>

<taglib>
<taglib-uri>/tags/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>
完成后,打开struts-config.xml文件,点击这个界面左下角的Design进入可视化设计界面。有没有注意右边的Palette :) 点击它,让我们来开始我们的jsp页面设计。我们先建立userLoginSuccess.jsp文件,为啥先建这一个呢?等下就知道了,在myeclipse中可以一次性把我们的Action,ActionForm,Jsp文件一次建好(将三个有关联的文件等下创建)。
点击Palette面版上的创建JSP文件图标,弹出创建JSP文件面板。图4:
o_4.JPG

File Name里输入userLoginSuccess.jsp,Template to use选择2] Standard JSP using Struts 1.1,点击Finish完成。
完成后,struts-config.xml文件自动被更新,可视化界在上也出现了刚新建的JSP模块。新建的jsp文件也被打开了。
覆盖所有的<%@ taglib ...... 为我们开始在/WEB-INF/web.xml中定义的:

<%@ taglib uri="/tags/struts-html" prefix="html"%>
<%@ taglib uri="/tags/struts-bean" prefix="bean"%>
<%@ taglib uri="/tags/struts-logic" prefix="logic"%>

然后在<body></body>中添加:
Hello <bean:write name="userName" scope="request" /> .
这里将request中的属性userName输出在页面上,所以等下我们在UserLoginAction中,登录成功后要设置一个相关属性。

OK,下面来开始我们最后三个文件的设计吧。在Struts-config.xmlDesign模式中,在画版的空白区域点右键,选择New --> New Form, Action and JSP 弹出ActionForm的选项面板,我们按图上输入相关值,图5:
o_5.JPG

Optional DetailsForm Properties选项卡,点add为这个ActionForm添加相关值,在这个登录示例中,将添加两个属性userName和password,图6:
o_6.JPG
在添加password时,注意将JSP input type 下拉框选择password.
完成这步后,我们就将ActionForm设计完成。
接下来选择 Optional DetailsJSP选项卡,我们选中Create JSP form? 这一步myeclipse将为我们创建一个简单的与用户交互的登录页面。保持内容和图7一样。图7:
o_7.JPG
因为我们这只是简单的演示一个登录片段,所以不用验证用户信息是否合法,所以将 Option Detailsmethod选项卡的新建方法去掉,如图8:
o_8.JPG
点Next,进入Action选项面板.将Option DetailsForm选项卡中Validate Form取消选择,如图9:
o_9.JPG
然后在Forwards选项卡中点add添加成功和失败返回的页面.如图10:
o_10.JPG
点击Finish完成。在Struts-config.xmlDesign中,可以看到图11所示:
o_11.JPG
最后,简单的修改一下userLogin.jsp,将所有<%@ taglib ...%>替换为:
<%@ taglib uri="/tags/struts-html" prefix="html"%>
<%@ taglib uri="/tags/struts-bean" prefix="bean"%>
修改UserLoginAction中的execute片段为如下所示,图12:
o_12.JPG

OK,完成。。。下面就部暑项目,测试。。。

像为项目添加Struts框架一样,在项目名上右击,选择MyEclipse --> Add and Remove Project development.
在弹出对话框上,单击add ,在弹出的 New Deployment 对话框上,Server选Tomcat5,点击Finish完成部署,如图13:
o_13.JPG
在用浏览器上打开:http://127.0.0.1:8080/LoginDemo/userLogin.jsp
输入密码123456,用户名EricHe。显示成功:
o_14.JPG
如果输错,或不输入,则无反映又回到当前登录页面(因为我们没有设置错误信息)。
55555~~~ 终于写完了。。。。。。。2005-07-06
posted on 2005-07-06 18:09 HexUzHoNG 阅读(25679) 评论(54)  编辑  收藏 所属分类: JAVAEclipse
<script type="text/javascript"> // </script>
<!---->
评论:
# re: 利用Myeclipse快速开发struts应用程序 2005-07-06 22:19 | cnhackTNT
"摘要:高清晰,套图,无码。嘿嘿"
-------------------------------

汗~用词真专业......
哈哈哈哈  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-07-06 23:20 | 剑事
可否写一个myeclipse下的XDoclet开发hibernate的教程  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-07-07 23:18 | HexUzHoNG
TO cnhackTNT:
要是有宽带,我会更专业的。。哈哈~~~~~

TO 剑事:
在myeclipse的帮助文档中有用myeclipe开发hibernate的例子。
个人感觉用myeclipse开发hibernate不用XDoclet.
它直接可以根据数据库结构生成配置文件和类文件。
如果说错了请指点。 :)

TO 小武藏:
本文一开始偶就说了:“是myeclipse帮助文档的中文简化版。”
没看内容,该打PP。。。。
  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-07-24 15:31 | 苦苦
myEclipse3.8.4 如何支持EclipseM6&M7啊??

我在安装的时候说只支持Eclipse3.0.x啊....  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-07-25 00:32 | HexUzHoNG
myeclipse官方网站上有两种不同版本的3.8.4 & 4.0
分别支持myeclipse 3.0.x & 3.1.x
你可以去她官方网站上看看 :)

  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-08-02 11:35 | reelcol
我按照这个做了后,为什么报错???
请楼主看看。

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: Exception creating bean of class com.yourcompany.struts.form.UserLoginForm: {1}
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.userLogin_jsp._jspService(userLogin_jsp.java:94)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


root cause

javax.servlet.jsp.JspException: Exception creating bean of class com.yourcompany.struts.form.UserLoginForm: {1}
org.apache.struts.taglib.html.FormTag.initFormBean(FormTag.java:563)
org.apache.struts.taglib.html.FormTag.doStartTag(FormTag.java:520)
org.apache.jsp.userLogin_jsp._jspx_meth_html_form_0(userLogin_jsp.java:110)
org.apache.jsp.userLogin_jsp._jspService(userLogin_jsp.java:84)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
javax.servlet.http.HttpServlet.service(HttpServlet.java:802)


note The full stack trace of the root cause is available in the Apache Tomcat/5.0.28 logs.
  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-08-09 13:02 | 暗暗
<a href="http://www.ywbtb.com">义乌采购网</a>

不好意思,让搜索引擎看的,借用贵宝地

你的文章写的很好,我刚STRUTS入门  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-09-02 16:23 | mytaia@163.com
你的JDK是5.0,为什么TOMCAT还用5.0的

另:用MYECLIPSE新建一个WEB工程时,为什么只有1.3和1.4两个版本,郁闷都没有1.5的选项  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-09-05 15:45 | Rocky
贴主舍不得真传啊,
真的环境是欺骗外行人:)
  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-09-06 16:46 | sungod
reelcol的错误我也保。我用的是jdk4.01。tomcat5。0  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-09-10 20:22 | HexUzHoNG
不好意思,又很久没更新了。一直没回复。


to Rocky:
晕,这样说就不好了吧。。。。
我也是Struts新手,我照上面一步一步写,然后抓图的。。。没出现错误

to sungod:
javax.servlet.ServletException: Exception creating bean of class com.yourcompany.struts.form.UserLoginForm:

你可以检查看看这个ActionForm有没有什么错误  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-10-19 15:24 | sam
Severity Description Resource In Folder Location Creation Time
2 cvc-complex-type.2.4.a: Invalid content was found starting with element 'taglib'. One of '{"http://java.sun.com/xml/ns/j2ee":description, "http://java.sun.com/xml/ns/j2ee":display-name, "http://java.sun.com/xml/ns/j2ee":icon, "http://java.sun.com/xml/ns/j2ee":distributable, "http://java.sun.com/xml/ns/j2ee":context-param, "http://java.sun.com/xml/ns/j2ee":filter, "http://java.sun.com/xml/ns/j2ee":filter-mapping, "http://java.sun.com/xml/ns/j2ee":listener, "http://java.sun.com/xml/ns/j2ee":servlet, "http://java.sun.com/xml/ns/j2ee":servlet-mapping, "http://java.sun.com/xml/ns/j2ee":session-config, "http://java.sun.com/xml/ns/j2ee":mime-mapping, "http://java.sun.com/xml/ns/j2ee":welcome-file-list, "http://java.sun.com/xml/ns/j2ee":error-page, "http://java.sun.com/xml/ns/j2ee":jsp-config, "http://java.sun.com/xml/ns/j2ee":security-constraint, "http://java.sun.com/xml/ns/j2ee":login-config, "http://java.sun.com/xml/ns/j2ee":security-role, "http://java.sun.com/xml/ns/j2ee":env-entry, "http://java.sun.com/xml/ns/j2ee":ejb-ref, "http://java.sun.com/xml/ns/j2ee":ejb-local-ref, "http://java.sun.com/xml/ns/j2ee":service-ref, "http://java.sun.com/xml/ns/j2ee":resource-ref, "http://java.sun.com/xml/ns/j2ee":resource-env-ref, "http://java.sun.com/xml/ns/j2ee":message-destination-ref">http://java.sun.com/xml/ns/j2ee":message-destination-ref, "http://java.sun.com/xml/ns/j2ee":message-destination, "http://java.sun.com/xml/ns/j2ee":locale-encoding-mapping-list}' is expected. web.xml LoginDemo/WebRoot/WEB-INF line 26 2005年10月19日 15:17:04

这错误什么意思啊?
  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-11-03 17:16 | mick
楼主啊
我在加了那个标签代码后就报WEB。XML报错啊
  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-11-03 17:16 | mick
楼主啊
我在加了那个标签代码后就报WEB。XML报错啊
  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2005-11-04 16:49 | fgt
建JSP文件时发和错误:An error has occurred when creating this editor
怎么解决??????  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2006-01-10 11:50 | sdzespri
为什么我的Myeclipse添加MyEclipse --> Add and Remove Project development部署的时候没有tomcat服务器时,没有哪一项,只有jboss一项阿?
急,请各位指点。  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2006-03-07 17:22 | finder
window->preferences->myeclipse->application server->tomcat5,别忘添jdk选项  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2006-04-06 19:19 | vivi0571
<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>

<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>

<taglib>
<taglib-uri>/tags/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>

添加这段时,提示不能以taglib开始。。。尽管也能运行  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2006-04-07 17:27 | roy
我WEB.XML向添加<taglib>报错。

Severity Description Resource In Folder Location Creation Time
2 cvc-complex-type.2.4.a: Invalid content was found starting with element 'taglib'. One of '{"http://java.sun.com/xml/ns/j2ee":description, "http://java.sun.com/xml/ns/j2ee":display-name, "http://java.sun.com/xml/ns/j2ee":icon, "http://java.sun.com/xml/ns/j2ee":distributable, "http://java.sun.com/xml/ns/j2ee":context-param, "http://java.sun.com/xml/ns/j2ee":filter, "http://java.sun.com/xml/ns/j2ee":filter-mapping, "http://java.sun.com/xml/ns/j2ee":listener, "http://java.sun.com/xml/ns/j2ee":servlet, "http://java.sun.com/xml/ns/j2ee":servlet-mapping, "http://java.sun.com/xml/ns/j2ee":session-config, "http://java.sun.com/xml/ns/j2ee":mime-mapping, "http://java.sun.com/xml/ns/j2ee":welcome-file-list, "http://java.sun.com/xml/ns/j2ee":error-page, "http://java.sun.com/xml/ns/j2ee":jsp-config, "http://java.sun.com/xml/ns/j2ee":security-constraint, "http://java.sun.com/xml/ns/j2ee":login-config, "http://java.sun.com/xml/ns/j2ee":security-role, "http://java.sun.com/xml/ns/j2ee":env-entry, "http://java.sun.com/xml/ns/j2ee":ejb-ref, "http://java.sun.com/xml/ns/j2ee":ejb-local-ref, "http://java.sun.com/xml/ns/j2ee":service-ref, "http://java.sun.com/xml/ns/j2ee":resource-ref, "http://java.sun.com/xml/ns/j2ee":resource-env-ref, "http://java.sun.com/xml/ns/j2ee":message-destination-ref">http://java.sun.com/xml/ns/j2ee":message-destination-ref, "http://java.sun.com/xml/ns/j2ee":message-destination, "http://java.sun.com/xml/ns/j2ee":locale-encoding-mapping-list}' is expected. web.xml userLogin/WebRoot/WEB-INF line 24 2006年4月7日 17:25:29
  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2006-04-07 17:29 | roy
我的MSN
roypayne305@gmail.com
学习struts的朋友可以交流一下。  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2006-04-13 15:07 | Ryen
OK,下面来开始我们最后三个文件的设计吧。在Struts-config.xml的Design模式中,在画版的空白区域点右键,选择New --> New Form, Action and JSP 弹出ActionForm的选项面板,我们按图上输入相关值,图5:

我没有Design这个模式,怎么让他显示出来  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2006-04-29 18:07 | qyter
最好不要用这种方法,对于简单的例子也许很方便,可是要是一旦复杂了,这个方法反而为了排错会花费很多的时间  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2006-07-21 23:17 | stonegreen
@Ryen
右键选中文件,open with-->.....选择myEclipse的编辑器就行了。  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2006-07-21 23:18 | stonegreen
@qyter

您指的哪种方法,是“选择New --> New Form, Action and JSP 弹出ActionForm的选项面板”吗?  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2006-09-13 14:09 | hjz
补充一点,对于报WEB.XML错误的朋友们的一点小意见,把taglib的内容放在<jsp-config></jsp-config>中应该就不会报错了。
  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2006-09-24 21:44 | pgt
非常感谢难得的入门案例。
但是在/WEB-INF/web.xml文件</webapp> 上面中添加如下标签库时出现标签错误,(confing—xml视图的design中右键点击wepapp会提示元素能够增加的子元素),经实验证明也可以不添加如下标签

<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>

<taglib>
<taglib-uri>/tags/struts-bean</taglib-uri>
<taglib-location>/WEB-INF/struts-bean.tld</taglib-location>
</taglib>

<taglib>
<taglib-uri>/tags/struts-logic</taglib-uri>
<taglib-location>/WEB-INF/struts-logic.tld</taglib-location>
</taglib>

  回复  更多评论
  
# re: 利用Myeclipse快速开发struts应用程序 2006-09-28 13:12 | hongfengllz
谢谢楼主的详细解说,不过还能不能举例把怎样应用Hibernate与数
分享到:
评论

相关推荐

    利用Myeclipse快速开发struts应用程序.ppt

    利用Myeclipse快速开发struts应用程序.ppt对于初学STRUTS 的人来产有很大的帮助……

    利用Myeclipse开发struts应用程序

    MyEclipse 是一个集成开发环境(IDE),它提供了对Struts框架的强大支持,包括图形化的Struts Designer工具,使得开发Struts应用程序变得更加便捷。在本教程中,我们将探讨如何使用MyEclipse来开发一个简单的Struts...

    利用MyEclipse开发Struts+Hibernate应用

    8. **学习资源**:除了阅读“利用MyEclipse开发Struts+Hibernate应用.pdf”文档外,还可以参考Struts和Hibernate的官方文档,以及众多在线教程和论坛,如Stack Overflow,获取更多实践经验和解决方案。 以上就是...

    利用MyEclipse开发Struts+Hibernate应用.rar_Eclipse_myeclipse_myeclipse

    【标题】"利用MyEclipse开发Struts+Hibernate应用.rar" 涉及到的是一个关于集成开发环境MyEclipse的教程,重点是如何在其中整合并使用Struts和Hibernate两个框架来构建Java Web应用程序。MyEclipse是Eclipse的一个...

    使用MyEclipse6开发Struts+Spring应用程序Samples Project

    在MyEclipse6中开发Struts+Spring应用,你需要先安装Struts和Spring的插件,以便获得更好的支持。MyEclipse6提供了丰富的工具集,如代码提示、自动构建路径、部署配置等,能极大地提升开发效率。 具体步骤如下: 1...

Global site tag (gtag.js) - Google Analytics