Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/delphi/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsp IBM Portal中的Struts2动态url操作_Jsp_Url_Dynamic_Struts2_Action - Fatal编程技术网

Jsp IBM Portal中的Struts2动态url操作

Jsp IBM Portal中的Struts2动态url操作,jsp,url,dynamic,struts2,action,Jsp,Url,Dynamic,Struts2,Action,我正在尝试使用struts2 url标记创建一个动态菜单栏。我从webservice获得了菜单列表,并尝试为每个菜单生成相应的URL。 我试过这个密码 <s:iterator value="roleMenus" id="child"> <s:if test="parentCode == #parent.childCode"> <s:if test="childCode != #parent.childCode"> <c:set v

我正在尝试使用struts2 url标记创建一个动态菜单栏。我从webservice获得了菜单列表,并尝试为每个菜单生成相应的URL。 我试过这个密码

<s:iterator value="roleMenus" id="child">
<s:if test="parentCode == #parent.childCode">
    <s:if test="childCode != #parent.childCode">
        <c:set var="link"><s:property value='menuLink'/></c:set>
        <% menulink = (String)pageContext.getAttribute("link"); 
            System.out.println(menulink);%>
        <li><a id='<s:property value="menuLink"/>' name="menulink" href="<s:url action='xxxxx'/>"><s:property value="menuName"/></a></li>
    </s:if>
</s:if>
但它抛出了一个例外

According to TLD or attribute directive in tag file, attribute "[action]" does not accept any expressions.
所以我猜这不能用任何类型的动态表达式在Action属性中实现

我正在考虑重写在调用s:URL标记时生成URL的方法,但我不知道如何做。它在IBM Portal中生成如下URL:

/wps/myportal/!ut/p/b1/jZDbToNAFEW_pR9gzhmG6-OEyMVhUGCowAsh2BiQS6yI0q-X9qkm1va87WSt7J0DBeTE1C2dWhrVIYNiqObmtZqacai6Yy70MmSpw9mTio9oOujHWkKpESnoHoX8HEBCcAU8LVWEUNZ4m2-7zFONANEMXA195qWxFVGKjF7zn6H4jfyx4AT8V3EC8MIxhNAb-x3kK2Zc3GIiZHOz-4LtMO779XUSMlTLpF3GT56ME3_J94ttvi_p24T1HEoctu1yCKRNs28tFtI2Hg6ilC2JCLO7KKxbkWA_obgj3Knvmctn7n9soC86x_JbNffZ5gdG203G/dl4/d5/L0lDU0NtbUEhL3dPb0JKaVVNcHJDSy80RzNhRFVRZy9aN19OQVVGS0FQNDBPMDhGMElSNVMzMzdRMjA4MC8lMHZpZXclMEFwcExvZw!!/

有人对此有什么想法吗?非常感谢您的帮助。

这是生成动态url的示例。我希望这对你有帮助

<s:set name="days" value="{'monday', 'tuesday', 'wednesday','thrusday','friday' }" />

<s:iterator var="day" value="#days">
    <s:url action="%{#day}" var="urlTag"></s:url>
    <s:property value="%{urlTag}"/><br/>
</s:iterator>



出现错误“JSPG0123E:无法找到标记属性变量的标记属性信息”。我尝试了id而不是var,并在web服务器日志中获取了另一个“找不到操作%{day}”。我认为它绝对不接受动作中的表情属性。感谢m8。在Struts 2.1.x中,id属性已被弃用,并已被var属性取代。在我将struts升级到最新版本2.3.8之后,您的代码似乎可以正常工作。但是在升级我的框架时,我仍然不能处理一些错误。非常感谢你。
/wps/myportal/!ut/p/b1/jZDbToNAFEW_pR9gzhmG6-OEyMVhUGCowAsh2BiQS6yI0q-X9qkm1va87WSt7J0DBeTE1C2dWhrVIYNiqObmtZqacai6Yy70MmSpw9mTio9oOujHWkKpESnoHoX8HEBCcAU8LVWEUNZ4m2-7zFONANEMXA195qWxFVGKjF7zn6H4jfyx4AT8V3EC8MIxhNAb-x3kK2Zc3GIiZHOz-4LtMO779XUSMlTLpF3GT56ME3_J94ttvi_p24T1HEoctu1yCKRNs28tFtI2Hg6ilC2JCLO7KKxbkWA_obgj3Knvmctn7n9soC86x_JbNffZ5gdG203G/dl4/d5/L0lDU0NtbUEhL3dPb0JKaVVNcHJDSy80RzNhRFVRZy9aN19OQVVGS0FQNDBPMDhGMElSNVMzMzdRMjA4MC8lMHZpZXclMEFwcExvZw!!/
<s:set name="days" value="{'monday', 'tuesday', 'wednesday','thrusday','friday' }" />

<s:iterator var="day" value="#days">
    <s:url action="%{#day}" var="urlTag"></s:url>
    <s:property value="%{urlTag}"/><br/>
</s:iterator>