`

Struts 2.1.6使用中的无奈!

阅读更多

   最近使用Struts 2.1.6做一个项目,但是在用到它的Ajax功能的时候发现有些异常,有的标签在一个页面中好好的,结果放到另一个页面就工作不正常啦!还有一个标签:<s:select label="请选择资料分类"
       name="file.cateFileId"
         list="%{#attr.filecate}"
       listKey="id"
       listValue="name"
       required="true"
       
/>把它单独放到一个页面中,工作正常,但是将它放到另一个页面中,这个页面还有其他几个标签:
<s:select label="请选择文章分类"
       name="topicblog.cateTopicId"
       list="#session.catetopic"
       listKey="id"
       listValue="name"
       required="true"
       
/>

 


<h3>请编辑文章</h3>
<s:textarea key="topic.content" id="elm1" label=""  name="topicblog.content" rows="15" cols="80" />


同步发布到论坛:
<s:select label="请选择论坛分类"
       name="topicblog.cateForumId"
         list="%{#attr.forumcate}"
       listKey="id"
       listValue="name"
       required="true"
       
/>唯独它结果显示不出来!
太郁闷!最后索性都用JQueryAjax实现!
但是还是不太明白怎么会出现这样的问题,是不是BUG?

Struts只需要负责Action就行啦,然后所有的ajax利用JQuery来实现,大家认为这个方法怎么样?这样以来轻松多啦!

现在是有个问题亟待解决,大家给个办法:我在Application中存了一个对象filecate,其包括资料分类以及对应的ID,我想在一个选择框中显示资料分类名字,用户单击的时候对应的ID就会被复制到对于那个的Action中的字段?在Struts 2.1.6中除了用以上的办法还有没有其他的?

分享到:
评论
30 楼 daxiong921 2009-09-29  
<div class="quote_title">jasstion 写道</div>
<div class="quote_div">
<div class="quote_title">kjj 写道</div>
<div class="quote_div">struts本身对ajax支持很弱了,我一直就用jquery,struts 稍微用用,struts的标签也很鸡肋啊,有没有人同感!!</div>
<br>其实个人感觉Struts 2标签还是很不错的就是有时出现些错误,特别是Ajax功能标签;有待完善!开始的时候想全部利用Struts标签实现Ajax但后来发现有不少错误,可能是其自身的BUG也可能是自己配置文件不对(Ajax的配置文件真是抽象),反正就是全部功能都利用Struts来实现是有点困难,虽然其本身提供了。</div>
<p> </p>
<p>sa</p>
29 楼 zaymg 2009-09-29  
现在好多做WEB 都是 struts2 + jquery + jstl 了
28 楼 liudun 2009-09-26  
反正我用webwork就感觉Ajax这块有不少bug ,还得自己去给ftl打补丁。
27 楼 Aguo 2009-09-26  
一般不使用Struts2的标签功能,jstl够用了;使用Ajax,自己实现一个ResultType就行了,方便好用轻巧
26 楼 jasstion 2009-09-25  
skzr.org 写道
jasstion 写道
kuchaguangjie 写道
楼主好好看看 struts2.1.6 的官方文档吧。。。。。。
真是的。。。
之所以叫 2.1.6 是因为和 2.0.x 不一样了,有较大的区别了,别写 2.0.x 的代码 却用2.1.6的jar包,却非得怪框架有问题,随便去 google 也不至于来发这种帖子

你说笑啦!我看得就是官方文档,而且是英文版的,那请教你怎么解决我上面提到的问题?
还有我用到的都是Struts 2.1.6的,哪里的2.x.0的代码,我也知道他们不一样,以后发帖拜托经过大脑思考啊呵呵
问题:我在Application中存了一个对象filecate,其包括资料分类以及对应的ID,我想在一个选择框中显示资料分类名字,用户单击的时候对应的ID就会被复制到对于那个的Action中的字段?在Struts 2.1.6中除了用以上的办法还有没有其他的?


我的情形:在直接访问jsp时出现楼主的现象
楼主的问题我也遇到过,确实有这样的问题,我发现如果直接访问某个页面时就会发生,在官方论坛上好像也有提及这个问题(貌似是因为没有正确初始化struts2的值堆栈,就是那个valueStack)
解决办法就是如果访问jsp,就通过一个action作为中转,在jsp中 从而正确初始化valueStack如<action name="*"><result>{1}.jsp</result></action>


过了几天啦,今天无意中终于把它解决啦,
<s:select label="请选择资料分类"
       name="file.cateFileId"
         list="%{#attr.filecate}"
       listKey="id"
       listValue="name"
       required="true"
       
/>改成<s:select label="请选择资料分类"
       name="file.cateFileId"
         list="%{#application.filecate}"
       listKey="id"
       listValue="name"
       required="true"
       
/>之后一切就OK啦!具体原因还在研究中。。。。。
25 楼 JArcher 2009-09-25  
skzr.org 写道
jasstion 写道
kuchaguangjie 写道
楼主好好看看 struts2.1.6 的官方文档吧。。。。。。
真是的。。。
之所以叫 2.1.6 是因为和 2.0.x 不一样了,有较大的区别了,别写 2.0.x 的代码 却用2.1.6的jar包,却非得怪框架有问题,随便去 google 也不至于来发这种帖子

你说笑啦!我看得就是官方文档,而且是英文版的,那请教你怎么解决我上面提到的问题?
还有我用到的都是Struts 2.1.6的,哪里的2.x.0的代码,我也知道他们不一样,以后发帖拜托经过大脑思考啊呵呵
问题:我在Application中存了一个对象filecate,其包括资料分类以及对应的ID,我想在一个选择框中显示资料分类名字,用户单击的时候对应的ID就会被复制到对于那个的Action中的字段?在Struts 2.1.6中除了用以上的办法还有没有其他的?


我的情形:在直接访问jsp时出现楼主的现象
楼主的问题我也遇到过,确实有这样的问题,我发现如果直接访问某个页面时就会发生,在官方论坛上好像也有提及这个问题(貌似是因为没有正确初始化struts2的值堆栈,就是那个valueStack)
解决办法就是如果访问jsp,就通过一个action作为中转,在jsp中 从而正确初始化valueStack如<action name="*"><result>{1}.jsp</result></action>


恩,struts2标签里结合了OGNL,存在valueStack的问题,他的数据是从valueStack取得的
24 楼 jasstion 2009-09-25  
skzr.org 写道
jasstion 写道
kuchaguangjie 写道
楼主好好看看 struts2.1.6 的官方文档吧。。。。。。
真是的。。。
之所以叫 2.1.6 是因为和 2.0.x 不一样了,有较大的区别了,别写 2.0.x 的代码 却用2.1.6的jar包,却非得怪框架有问题,随便去 google 也不至于来发这种帖子

你说笑啦!我看得就是官方文档,而且是英文版的,那请教你怎么解决我上面提到的问题?
还有我用到的都是Struts 2.1.6的,哪里的2.x.0的代码,我也知道他们不一样,以后发帖拜托经过大脑思考啊呵呵
问题:我在Application中存了一个对象filecate,其包括资料分类以及对应的ID,我想在一个选择框中显示资料分类名字,用户单击的时候对应的ID就会被复制到对于那个的Action中的字段?在Struts 2.1.6中除了用以上的办法还有没有其他的?


我的情形:在直接访问jsp时出现楼主的现象
楼主的问题我也遇到过,确实有这样的问题,我发现如果直接访问某个页面时就会发生,在官方论坛上好像也有提及这个问题(貌似是因为没有正确初始化struts2的值堆栈,就是那个valueStack)
解决办法就是如果访问jsp,就通过一个action作为中转,在jsp中 从而正确初始化valueStack如<action name="*"><result>{1}.jsp</result></action>

那也太麻烦啦直接利用JSTL标签解决吧,应该可以,回去试一下!
23 楼 skzr.org 2009-09-25  
jasstion 写道
kuchaguangjie 写道
楼主好好看看 struts2.1.6 的官方文档吧。。。。。。
真是的。。。
之所以叫 2.1.6 是因为和 2.0.x 不一样了,有较大的区别了,别写 2.0.x 的代码 却用2.1.6的jar包,却非得怪框架有问题,随便去 google 也不至于来发这种帖子

你说笑啦!我看得就是官方文档,而且是英文版的,那请教你怎么解决我上面提到的问题?
还有我用到的都是Struts 2.1.6的,哪里的2.x.0的代码,我也知道他们不一样,以后发帖拜托经过大脑思考啊呵呵
问题:我在Application中存了一个对象filecate,其包括资料分类以及对应的ID,我想在一个选择框中显示资料分类名字,用户单击的时候对应的ID就会被复制到对于那个的Action中的字段?在Struts 2.1.6中除了用以上的办法还有没有其他的?


我的情形:在直接访问jsp时出现楼主的现象
楼主的问题我也遇到过,确实有这样的问题,我发现如果直接访问某个页面时就会发生,在官方论坛上好像也有提及这个问题(貌似是因为没有正确初始化struts2的值堆栈,就是那个valueStack)
解决办法就是如果访问jsp,就通过一个action作为中转,在jsp中 从而正确初始化valueStack如<action name="*"><result>{1}.jsp</result></action>
22 楼 8vip 2009-09-25  
我基本上用JSTL标签
21 楼 visualcatsharp 2009-09-25  
特烦老是说什么插件,整合之类的。没了这些东西要死一样
20 楼 long113 2009-09-25  
框架总会有bug,没有bug的框架不是好框架。遇上bug,如果不能解决,就另取捷径。
19 楼 realghost819 2009-09-25  
你可以选用一种ajax框架整合到struts2里,比如plugin的方式,整合的过程就是对struts2的了解过程。我觉得struts2继承了webwork的框架真的很简单,也很容易扩展。
18 楼 bxf12315 2009-09-25  
1945年,一位非藉少女LATUALATUKA,乘坐一艘灰色小船由非洲漂到美国&#8231;一位神秘男人杀死了她,而且在背脊割了"LATUALATUKA"几个字母。一星期后, 这消息传到亚洲.现在你已看完这篇讯息, 她会在一星期后飘到你家中夺取你最重要的家人性命。解咒方法只有完成以下指示: 将此讯息贴在其他三个留言版的回应内
              对不起,不小心看到的,没办法
17 楼 cnlw1985 2009-09-25  
struts 2.1.6 的标签不怎么样,我基本上不用
16 楼 jasstion 2009-09-25  
helin 写道
东西只用其好的,不好的可以不用,没人强制要求,Struts2的标签我觉得是多余,EL+JSTL就很好了。

说的很好,但是如果整个项目都用一种框架解决感觉岂不更爽,struts 2.1.6中提供的Ajax标签个人感觉还是挺不错的(效率是有点低),只是有时会出现一些问题,可能是自己关于Ajax配置文件不对吧
15 楼 jasstion 2009-09-25  
kuchaguangjie 写道
楼主好好看看 struts2.1.6 的官方文档吧。。。。。。
真是的。。。
之所以叫 2.1.6 是因为和 2.0.x 不一样了,有较大的区别了,别写 2.0.x 的代码 却用2.1.6的jar包,却非得怪框架有问题,随便去 google 也不至于来发这种帖子

你说笑啦!我看得就是官方文档,而且是英文版的,那请教你怎么解决我上面提到的问题?
还有我用到的都是Struts 2.1.6的,哪里的2.x.0的代码,我也知道他们不一样,以后发帖拜托经过大脑思考啊呵呵
问题:我在Application中存了一个对象filecate,其包括资料分类以及对应的ID,我想在一个选择框中显示资料分类名字,用户单击的时候对应的ID就会被复制到对于那个的Action中的字段?在Struts 2.1.6中除了用以上的办法还有没有其他的?
14 楼 kuchaguangjie 2009-09-24  
楼主好好看看 struts2.1.6 的官方文档吧。。。。。。
真是的。。。
之所以叫 2.1.6 是因为和 2.0.x 不一样了,有较大的区别了,别写 2.0.x 的代码 却用2.1.6的jar包,却非得怪框架有问题,随便去 google 也不至于来发这种帖子
13 楼 thinblue 2009-09-24  
s2 的标签用的很少`` 一般都用JSTL 如果需要AJAX  就上JQUERY
12 楼 helin 2009-09-24  
东西只用其好的,不好的可以不用,没人强制要求,Struts2的标签我觉得是多余,EL+JSTL就很好了。
11 楼 jansel 2009-09-24  
Struts2.1.6的Tag框架还不错,可以动态指定theme,而且自己扩展也很方便;如果直接使用,的确比较不爽。

Ajax,Struts2的确不强,是通过theme实现,个人感觉不好用

其他方面Struts2很不错了

还是用JQuery简单些

相关推荐

Global site tag (gtag.js) - Google Analytics