Java 如何在JSP中获取操作名,即使它是';是空的吗?
我是java新手。我试着四处搜索,但没有找到任何与我的问题类似的东西 我在菜单中有列表项(Java 如何在JSP中获取操作名,即使它是';是空的吗?,java,jsp,struts2,ognl,struts-action,Java,Jsp,Struts2,Ognl,Struts Action,我是java新手。我试着四处搜索,但没有找到任何与我的问题类似的东西 我在菜单中有列表项(-s和-s),我想在标记中添加活动的类,具体取决于操作的名称,以激活特定的菜单项 为此,我使用了这段代码 ${request.context['struts.actionMapping'].name} 这段代码在所有页面上都可以正常工作,但在第页上除外。操作名称为”,即空字符串。空字符串检查或空检查在操作名为“” ${request.context['struts.actionMapping'].name
-s和
-s),我想在
标记中添加活动的类,具体取决于操作的名称,以激活特定的菜单项
为此,我使用了这段代码
${request.context['struts.actionMapping'].name}
这段代码在所有页面上都可以正常工作,但在第页上除外。操作名称为”
,即空字符串。空字符串检查或空检查在操作名为“”
${request.context['struts.actionMapping'].name}
-
仪表板
-
添加学生档案
-
编辑配置文件
-
视图配置文件
这是我的struts.xml
主人
添加
编辑
看法
如果操作名称为空,${request.context['struts.actionMapping'].name}
将在
标记体中产生空值,该空值等于
,并将值堆栈中的top对象分配给某些变量。通常,值堆栈中的顶级对象是action类实例。所以你会得到类似于com.javaguy.struts2的东西。IndexAction@4349f7db
而不是空字符串
要获得一个空的操作名,只需在
标记中使用OGNL
<s:set var="some" value="#request.context['struts.actionMapping'].name" />
同样像Andrea已经提到的那样,避免在变量中使用关键字(如操作
)。空操作?为什么?使用
。也许他只想捕获空操作,而不是所有不匹配的URL。还有“*”
诀窍,顺便说一句,最好使用非空名称,但我想整个要点有点宽泛,一个人怎么能调用空操作呢?类似于/.action
。将EL与Struts标签混合的一点副作用:D@YasirWali:关于这个问题,你还有什么问题吗?如果没有,别忘了接受/支持对你有帮助的答案。