标签: struts-1

Struts 1和Struts 2之间的区别?

我一直在使用struts 2,但由于一些原因,我正在转移(返回)Struts 1.我想知道它们之间的主要差异,比如程序可用性和一般流程.

struts2 struts-validation struts-1

9
推荐指数
2
解决办法
3万
查看次数

Struts 1 - 如何显示ActionMessages

ActionMessage通过JSP以下命令在文件中显示s :

<logic:messagesPresent message="true">
    <ul id="messsages">
        <html:messages id="msg" message="true">
            <li><bean:write name="msg"/> </li>
        </html:messages>
    </ul>
</logic:messagesPresent>
Run Code Online (Sandbox Code Playgroud)

现在我想只显示选定的消息.如何指示要显示的消息?

更新

其实我有两个ActionMessages对象 - messageswarnings.现在我想在单独的JSP页面上显示它们......显示一个页面messages和其他页面warnings.

那么如何在JSP页面中指出要显示哪些消息?



更新 - 2

现在,我发现了一件奇怪的事情.

saveMessages(request, messages);
saveMessages(request, warnings);
Run Code Online (Sandbox Code Playgroud)

当我写上面的代码时,只有warnings工作.当我颠倒了上述两个陈述的顺序时,那只是messages起作用了.

似乎我们只能ActionMessages在请求中添加一个对象.如果它是正确的,那么如何分别在两个ActionMessages对象中显示消息.

java struts struts-1

8
推荐指数
1
解决办法
4万
查看次数

在struts应用程序中迭代JSP中的hashmap

我有一个HashMapJSP页面上的对象.

HashMap<Integer,Gift_product> gift_hm = new HashMap<Integer,Gift_product>();
gift_hm.put(17,new Gift_product("doll",67));
Run Code Online (Sandbox Code Playgroud)

现在我需要迭代它并在JSP上显示内容.本Gift_product类包含两个字段:nameprice.

JSP输出应该是

serial no.           product name     price
17                    Doll            67
Run Code Online (Sandbox Code Playgroud)

我怎样才能实现它?

java struts-1

8
推荐指数
2
解决办法
3万
查看次数

Struts 1.x vs Struts 2.x.

我已经回顾了一些关于SO的Struts 1 vs 2问题,但似乎没有人从我正在考虑的角度回答这个问题.

我即将开始构建一个新系统,对一个非常古老的桌面应用程序进行全面的重新设计.目标是使其基于Web,添加更多功能,使其更有用等(通常的再造原因).

开发该系统的团队主要是Java开发人员,过去5年来一直在Struts 1.x上工作.

该系统计划在未来许多年内存在,因此在更好的框架出现的3 - 5年内再次重新设计的想法不是一种选择.它并不打算大量使用AJAX.

我的问题是,当我的团队对Struts 1.x有如此丰富的经验时,为什么我会费心去Struts 2.我知道有一些改进,但我担心让团队加快速度,因错误使用等而导致返工的时间将远远超过我们从Struts 2获得的任何好处.我们喜欢Struts 1,它做的就是我们需要它,所有的设计模式,标准,最佳实践等都已到位.

Struts 2是否有任何杀手级功能或Struts 1中我不知道的严重问题会影响继续使用Struts 1的决定.

java struts2 struts-1

8
推荐指数
1
解决办法
1万
查看次数

Struts 1 ActionForms - 表单中日期的约定是什么?

我即将开始使用Struts 1.2的e项目.没有计划转移到另一个框架.

我想知道在表单中处理日期时的惯例是什么?

  1. 我应该创建一个Date变量并创建一个setDate(String date)转换发生的方法吗?

  2. 创建一个Date变量,setDate(Date date)并在链中的某处注册一个特殊的转换器?(不知道是否可能)

  3. 创建一个String变量,setDate(String date)并让validateActionForm bean中的方法转换/验证?

还是另一种方法?

另外,如果你有任何建议来加快这个框架的速度,我真的很感激.

struts conventions struts-1

8
推荐指数
1
解决办法
6793
查看次数

request.getCharacterEncoding()返回NULL ...为什么?

我的一个同事创建了一个基本的联系我们类型形式,它修饰了重音字符(è,é,à等).我们在Struts 1上使用KonaKart作为Java电子商务平台.

我已经将问题缩小到通过HttpServletRequest对象传入的数据.比较一个类似(正常运行)的表单,我注意到在旧表单上,请求对象的Character Encoding(request.getCharacterEncoding())返回为"UTF-8",但在新表单上它返回为NULL,并且文本从request.getParameter()已经被破坏了.

除此之外,我还没有发现已知良好形式与新破形式之间存在任何显着差异.

我已经排除的事情:

  • 两个HTML页面都有标记: <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
  • HTML中的两个表单标签都使用POST,并且不设置编码
  • 从Firebug检查,请求和响应标头都具有相同的属性
  • 两个JSP页面在<%@page contentType="text/html;charset=UTF-8" language="java" %>标记中使用相同的属性
  • 在*Form.java文件中没有任何有趣的东西,它们都继承自BaseValidatorForm
  • 我检查了源文件编码,它们都设置为Default - 继承自Container:UTF-8

如果我将它们从ISO-8859-1转换为UTF-8,它的效果很好,但我更愿意找出核心问题.例如:new String(request.getParameter("firstName").getBytes("ISO-8859-1"),"UTF8")

欢迎提出任何建议,我完全没有想法.

java servlets character-encoding struts-1 konakart

8
推荐指数
1
解决办法
9682
查看次数

jsp表达式标签之间的差异<%和<%=

我或多或少知道<%!并且<%,但我似乎找不到<%=和<%之间的区别.我试图通过在我的表达式中引入一些当前使用<%= ...%>的逻辑来避免空值错误.除非我用<%...%>替换标记,否则会出错.但是在我构建之后,我得到一个jsp错误而不是servlet错误.我无法在此处粘贴原始代码,但<%= ...%>中的代码实质上是检索Struts 1项目中作为servlet参数传递的嵌套数组对象(更像是另一个数组对象中的数组对象).我只想添加一个try ... catch语句,以防对象的属性尚未实例化.

<%=((package.package.package.ClassName)session.getAttribute("attrName")).getObjectList()[0].getSecondObject.length%>; 
Run Code Online (Sandbox Code Playgroud)

这是一个jsp问题,还是Struts 1问题?再说一遍,2个标签之间有什么区别?

jsp jsp-tags struts-1

8
推荐指数
1
解决办法
3万
查看次数

HTML表单POST方法,在操作URL中使用查询字符串

假设我的页面上有一个带有method = POST的表单.现在这个表单有一些基本的表单元素,如文本框,复选框等.它的操作URL为http://example.com/someAction.do?param=value

我确实理解这实际上是一件相互矛盾的事情,但我的问题是它是否会在实践中发挥作用.

所以我的问题是;

  1. 由于form方法是POST,我的URL中也有一个查询字符串(?param = value)它会正常工作吗?即我能够在我的接收页面上检索param =值(someAction.do)

  2. 假设我使用Java/JSP访问服务器端的值.那么在服务器端获取值的方法是什么?语法是否相同,以访问param = value的值以及textbox/radio button/checkbox等表单元素?

forms struts-1 query-string

7
推荐指数
1
解决办法
8213
查看次数

<html:radio>检查struts html标签中的单选按钮默认值

如何在struts html标签中默认设置单选按钮?

<html:radio name="RegisterForm" property="Group"  value="<%=Contant.Male%>"/><label>Male</label><BR>
<html:radio name="RegisterForm" property="Group" value="<%=Contant.Female%>"/><label>Female</label>
Run Code Online (Sandbox Code Playgroud)

在这里,我必须将Male设置为默认值.提前致谢.

struts struts-1

7
推荐指数
1
解决办法
9599
查看次数

Struts 1.2(生命周期)中的控制流程

标题可能听起来有点模糊,但我会试一试.我有2个servlet:

  1. one.java:扩展了Action class转发页面,成功或失败的基础上在输入端index.jsp
  2. two.java:扩展ActionForm class,有getter和setters方法

我有3个jsp文件:

  1. index.jsp:欢迎页面并询问用户名组合
  2. success.jsp:如果组合正确,则调用
  3. failure.jsp:如果组合为false则调用

我有2个xml文件:

  1. web.xml: DD
  2. struts-config.xml: Struts配置文件

我理解web.xml是如何工作的.我唯一的疑问是,首先从struts.xml调用one.java /two.java中的哪一个?

我试图调试并发现ActionFormtwo.java首先被调用,然后它将值返回到Actionie one.java.

但是Action类应该首先执行,然后是动作形式吗?我的意思是这就是MVC架构所遵循的.

请解释.链接到非常详细的工作流程将非常有用.

java struts struts-1 struts-config

7
推荐指数
1
解决办法
3万
查看次数