hanhanleon887285 2011-11-23 20:31
浏览 160
已采纳

Struts2 自带的例子Struts2-blank 学习三问

我的Struts版本是:Struts2.2.3.1。 把它自身带的例子都导入到了Eclipse中。

 

 

在其自带的例子Struts2-blank中,

Package.properties 文件中包含:  requiredstring = ${getText(fieldName)} is required.

我的理解如下:

${getText(fieldName)}是一个OGNL表达式。getText是ActionSupport的方法。

问题一:

请问 fieldName是什么,怎么理解?可以向上追溯到哪里?为什么必须写成fieldName,不能写成Foo?

 

在example.xml文件中有如下配置:

<action name="Login_*" method="{1}" class="example.Login">

            <result name="input">/example/Login.jsp</result>

            <result type="redirectAction">Menu</result>

</action>

在login.jsp文件中的form定义如下:

<s:form action="Login">

    <s:textfield key="username"/>

    <s:password key="password" />

    <s:submit/>

</s:form>

 

如果我填写的信息不完整,点击确定提交以后,这个form提交给了Login.action。

如果我填写的信息完整,则会转到Menu.action。

问题二:

请问,配置文件中分明配置的是Login_*,那么login.jsp文件form的目的地Login怎么能够匹配过去呢?分明有一个下划线不匹配啊?

另外,Login.java中,没有定义execute意外的方法,那么,配置文件中用通配符配置action,还有什么意义吗?如在本例中,jsp页面没有明确指定method,那么struts框架会自动调用execute方法吗?

 

在eclipse中,Login-validation.xml会出现

The file cannot be validated as the host "www.opensymphony.com" is currently unreachable.

这样的waring。

原因在于Login-validation.xml中有这样一句

<!DOCTYPE validators PUBLIC

        "-//OpenSymphony Group//XWork Validator 1.0.2//EN"

        "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">

问题三:

请问如何能够避免出现这样的提示信息?能用xwork-core-2.2.3.1.jar中的xwork-validator-1.0.2.dtd来替换掉吗?如果能,如何替换?

  • 写回答

2条回答 默认 最新

  • yanjinke 2011-11-24 19:35
    关注

    [quote]对于问题一,请问fieldName是否是保留字??

    对于问题二,您可能还没有看太仔细题目,在JSP页面中指定的action是action="Login" 而非action="Login_",所以我认为匹配不过去,但是实际上程序运行的时候是匹配过去了,呵呵,我搞不明白。 [/quote]

    fieldName 是关键字

    问题二中,,Login_* Login是 LoginAction.java, *是LoginAction.java 中的方法

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 MATLAB动图问题
  • ¥15 有段代码不知道怎么理解,const isToken = (config.headers || {}).isToken === false
  • ¥100 采用栈和深度优先算法对我的代码进行修改显示路径
  • ¥15 pointnet2包安装
  • ¥20 射频功率问题,解答者有酬谢!
  • ¥80 构建降雨和积水的预测模型
  • ¥15 #Qt Transform setTransform()在鼠标拖动移动视角是一致在原地不动,无法变换视角(细微观察似乎视图有在原地抖动),无法变换视角(细微观察似乎视图有在原地抖动)
  • ¥50 如何利用无人机拍摄的数码照片测量鸟卵的长短径
  • ¥100 github贡献者给与奖励
  • ¥15 使用DS18B20+ESP8266获取温度数据返回-127.00