日期:2014-05-18  浏览次数:20665 次

学struts2遇到的一些问题...在线求解答.
问题1.<s:textfield>,<s:password>等标签会自动带入一些html代码,比如<td>之类.
  这样美工就不能方便的控制页面.请问有什么办法可以像用html标签一样使用这些标签,
  就是去除它们自动带的那些html代码

问题2.我可以使用<s:textfield name="username">使用输入框获得action的username属性的值.
  这种强大的语法好像是用了ognl.
  能不能在原生的html中也使用这种语法.比如<input type="text" name="username" value="这儿写表达式" />
  这个表达式应该怎么写.

问题3.
struts2的demo中的struts.xml中有这么一段配置
XML code
<package name="default" namespace="/" extends="struts-default">
        <default-action-ref name="index" />
        <action name="index">
            <result type="redirectAction">
                <param name="actionName">HelloWorld</param>
                <param name="namespace">/example</param>
            </result>
        </action>
    </package>



请问<default-action-ref name="index" />这个标签是什么含义

问题4.struts2页面中的语法太多了.比如%{},#{?}等等...
  而我找了struts2文档中这方面的资料,发现介绍得很简单,
  有没有详细介绍这方面资料的网站或书籍

学struts2遇到的问题一大堆..
我不可能经常上来麻烦诸位大侠..所以一起问了!
 

------解决方案--------------------
struts2偶还没用呢,落伍了

嘿嘿


顶!
------解决方案--------------------
第一个问题把form加入theme= "simple"就好了;
第二个不清楚
第三个<default-action-ref name="index"/> 指明了当访问的链接不存在时,默认指向 index请求
我也新手多指教...
------解决方案--------------------
第二个问题是可以的,ognl是struts2的灵魂,但其语法也比较复杂,而且要配合大量的其它标签使用,
比如:<s:property
实际上复杂性就是你的第四个问题。


第三个问题:
default-action-ref

它的意思是说,如果你指定的Action没有找到,则转而调用该标签定义的action,
在这个例子里,就是index.action
------解决方案--------------------
<html:text property="username" value="这儿写表达式" /> 

------解决方案--------------------
顶一下
------解决方案--------------------
建议你看一下: 孙卫琴<<精通Struts 设计MVC>>这本书比较好..

在google搜一下孙卫琴的书...
------解决方案--------------------
问题1. <s:textfield>, <s:password>等标签会自动带入一些html代码,比如 <td>之类.
这样美工就不能方便的控制页面.请问有什么办法可以像用html标签一样使用这些标签,
就是去除它们自动带的那些html代码
解决方法:将你的网页设计工具,比方说Dreamweaver,让他和Struts的项目同步就行;记住,你一定要在Dreamweaver中创建一个站点,有利于整个项目的页面设计与Struts同步
问题2.我可以使用 <s:textfield name="username">使用输入框获得action的username属性的值.
这种强大的语法好像是用了ognl.
能不能在原生的html中也使用这种语法.比如 <input type="text" name="username" value="这儿写表达式" />
这个表达式应该怎么写.

解决方法:你可以在Struts中使用<input type="text" name="username" value="这儿写表达式" />,那么你在Action中就要用request对象来获取值了;不能用from表单对象直接调
问题3.
struts2的demo中的struts.xml中有这么一段配置
解决方法:“default”包默认使用的action是“/index”
问题4.struts2页面中的语法太多了.比如%{},#{?}等等...
而我找了struts2文档中这方面的资料,发现介绍得很简单,
有没有详细介绍这方面资料的网站或书籍http://download.csdn.net/source/1176497

------解决方案--------------------
问题1:
1>.全局设置:在struts.xml或struts.properties文件中,通过struts.ui.theme = simple。
2>.标签设置:通过各个struts2标签中theme = simple进行设置。

问题2:struts2默认支持OGNL表达式,通常在输出内容和判断时候用。
1>.输出内容:<s:property value="#request.name" />