JDeveloper构建Struts应用程序 - 编程入门网
开发文件均位于WorkingStruts.jpr节点下。
要生成一个名为login.jsp的空JSP login页面,请选择File->New命令。在New对话框中,Categories下选择Web tier->JavaServer Pages (JSP)。在Items下选择JSP Page,然后点击OK。在New JSP Document对话框中,接受缺省的目录位置,输入文件名login.jsp,点击Ok。 下一步,添加一个基于Structs的HTML表单来包含你的login(登录)字段。在Component Palette中选择Struts HTML,并将form标记添加到该页面中。在JaveServer Page Tag Editor中,设置Action属性为/login。/login是你将在其下创建的Struts映射。 现在,你已经有了一个空的Struts表单。添加login字段,使用Component Palette来创建Struts text标记。将第一个text(文本)字段的属性值设置为"userid"。重复该步骤创建password(密码)字段,但是将其属性设置为"password"。在你运行该HTML表单时,Struts text标记将提供userid和password字段。这些字段还对应于表示HTML表单中所有字段的Struts ActionForm类。 在每个text字段前面,你还需要添加"Userid:"和"Password:"提示。你可以将这些提示直接添加到JSP页面中。 注意:如果你希望能动态产生提示,比如,根据所在区域或语言首选项,这些提示可以通过Struts message标记从一个与特定语言的资源文件中产生。 你完成的login.jsp看起来应该像清单1所示的那样。 创建登录form bean JDeveloper构建Struts应用程序(3)时间:2010-12-23一旦完成了Login.jsp,你就可以开始创建Struts ActionForm bean,用于对HTML form字段提供Jave表示。form bean还提供第一层的校验,例如,所有需要输入的字段是否包含数据或字段是否有数据位于错误的表中,如错误的电子邮件地址。 要在Oracle9i JDeveloper中建立Struts ActionForm Bean,请启动Oracle9i JDeveloper的Action向导,选择File->New。在打开的New对话框中(Categories下),选择Web tier->Struts。在Items下选择ActionForm,然后点击OK。在New Struts Form Bean对话框中,输入类名(Name)为LoginForm 、form bean(FormBean Name)为LoginForm,然后点击OK。 创建ActionForm Bean(LoginForm.java)后,使用Oracle9i JDeveloper的Class Editor将userid和password字段添加到该bean中。Class Editor简化了为LoginFrom bean添加字段以及相应的getter和setter方法。 为了提供一些初始的form字段校验,你可以定制缺省form bean的validatre()方法。对于这个应用程序,你只需要检查字段是否为空即可。你可以通过使用清单2中的代码替换LoginForm.java中缺省bean的validate()方法代码来进行这一检查。 注意清单2中的error.userid.required与error.password.required参数,它们实际指的是你的ApplicationResources.properties文件。你可以在这个文件中定义相应的错误信息。 图1:Struts配置编辑器 构建Login Action类 Struts Action类使你能够对来自HTML表单的请求进行实际处理。要创建你的登录请求,可以使用Oracle9i JDeveloper的Struts Action向导建立一个Structs Action。选择File->New,在New对话框(Categories之下)中选择Web tier->Struts。在Items下选择Action,点击OK。在New Struts Form Bean对话框中,输入类名(Name)为LoginAction,输入路径(Path)为/login,该路径对应你Structs form标记中指定的动作。 要定制LoginAction类,可以编辑LoginAction.java文件并加入必要的代码,以便根据表单提交的HTML字段判断登录成功与否。这可以通过编辑Action类的execute()方法来完成。使用清单3中的代码替换execute()方法的缺省内容。 注意,在这个示例程序中,Lo |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |