问题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中有这么一段配置
<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遇到的问题一大堆..
我不可能经常上来麻烦诸位大侠..所以一起问了!
   

解决方案 »

  1.   

      struts2偶还没用呢,落伍了嘿嘿
    顶!
      

  2.   

    第一个问题把form加入theme= "simple"就好了;
    第二个不清楚
    第三个<default-action-ref name="index"/> 指明了当访问的链接不存在时,默认指向 index请求
    我也新手多指教...
      

  3.   

    第二个问题是可以的,ognl是struts2的灵魂,但其语法也比较复杂,而且要配合大量的其它标签使用,
    比如:<s:property
    实际上复杂性就是你的第四个问题。
    第三个问题:
    default-action-ref它的意思是说,如果你指定的Action没有找到,则转而调用该标签定义的action,
    在这个例子里,就是index.action
      

  4.   

    <html:text property="username" value="这儿写表达式" /> 
      

  5.   

    多谢大家的回答..
    特别是3楼的兄弟,很好的解决了我的几个困惑.再请问下,
    struts2有没有自带的解决乱码问题的拦截器...
      

  6.   

    建议你看一下:  孙卫琴<<精通Struts 设计MVC>>这本书比较好..在google搜一下孙卫琴的书...
      

  7.   

    又想起两个..
    一并说出来,一起学习.问题5.
    资源文件的名称在哪里配置..
    比如package.properties这个package在哪里配置的...web.xml和struts.xml文件中都没发现.
    问题6.
    Action的后缀名.action可以配置成别的吗.在哪里配置.
      

  8.   

    问题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
      

  9.   

    问题1:
        1>.全局设置:在struts.xml或struts.properties文件中,通过struts.ui.theme = simple。
        2>.标签设置:通过各个struts2标签中theme = simple进行设置。问题2:struts2默认支持OGNL表达式,通常在输出内容和判断时候用。
        1>.输出内容:<s:property value="#request.name" />
        2>.判断:<s:if test="%{count == 1}">A</s:if>问题3:
        action请求名字不存在的时候,发生错误,通过<default-action-ref />处理,迁移到自己指定的画面。问题4:
        李剛的《Struts 2权威指南》
      

  10.   

    我补充一下,别人说过的我就不说了
    1.可以重写struts的标签,也可以定义自己的标签库,不过工作量有点大
    2.是ONGL,username取自valuestack,要是取context的内容,要加#,具体含义请GOOGLE
    3.略
    4.PetStore,学着写一边就行了
    5.package.properties是包资源文件,放在相应的包下,搜索资源时就首先搜索它
    6.可以,在struts.properties里的struts.action.extension
      

  11.   

    Struts2和Struts1是不是有很大不同啊?望高手赐教!
      

  12.   

    Struts2和Struts1是不是有很大不同啊?望高手赐教!
      

  13.   


    1.你可以像3L说的那样做 也可以在struts.xml里加上 <constant name="struts.ui.theme" value="simple" />
    <constant name="struts.ui.templateDir" value="template" />
    <constant name="struts.ui.templateSuffix" value="ftl" />2.EL表达式 ${requestScope.username}3.<default-action-ref name="index" /> 没用过 不过凭偶地直觉 如果你这个package有namespace="/"的话 他应该是设置这个package的默认页吧... 总之不太清楚4. 语法基本没变 就是EL表达式 有些特殊的 比如#sesson啊等 你用了就知道了..
      

  14.   

    <input type="text" name="username" value="这儿写表达式" /> 用<input type="text" name="username" value="${username}" /> 
      

  15.   

    lz慢慢学吧,struts2不是很难的
      

  16.   

    建议去看看 Max 的《struts2.0中文帮助手册.chm》这本书吧,,对于刚接触struts2的朋友一定有所帮助 
      

  17.   

    貌似struts 2.0.11以上的版本就不支持struts tag与JSP EL表达式混合使用了
      

  18.   

    问题2<s:hidden name="treeId" value="%{treeId}"></s:hidden>
      

  19.   

    struts2偶还没用呢,落伍了 嘿嘿 
    顶!
      

  20.   

    楼上那个别怕,等struts3 出来后struts2也落伍了。
      

  21.   

    struts2的标签我们只是用于迭代,或者动态获取信息等,设计页面还是用html
      

  22.   

    不能在Action中用request设置下 ,然后用#调用么?
      

  23.   

    不要用struts2的标签嘛。
    struts1.2,struts2,jsf等等表现层的标签都不好用。
    项目开发中直接使用html标准格式的标签,对大家都有好处。
    在struts2中,纯html格式的标签中的数据一样可以被action捕获。
    只是实现表单验证时不能回显错误而已,可以建议用javascript做表单验证。
      

  24.   

    第三个问题是:
    如果你指定的Action没有找到,则转而调用该标签定义的action, 
    在这个例子里,就是index.action
    也可以这样写,把错误的信息用<result name="input">/WEB-INF/person/city_input.jsp
    <action name="saveCity" class="CityAction" method="save">
    <result type="redirectAction">listCity</result>
    <result name="input">/WEB-INF/person/city_input.jsp
    </result>
    </action>
      

  25.   

    struts2 正在学习中  关于拦截器的问题还不是很清楚   
      

  26.   

    可以参考一下 struts2.0 权威指南 可能有帮助
      

  27.   

    为什么 我在 struts.property中 struts.ui.theme=simple 的话,jsp上面的
    <s:textfield name="company.postCode" label="邮编"/>  label属性就出不来~?
      这个问题该怎么解决?  大家帮忙...
      

  28.   

    顶一个~~~正在用struts2
    一直在想,框架这东西是不是还是约束性有点大了