Java Struts 2 JSON插件和通配符问题
在myJava Struts 2 JSON插件和通配符问题,java,json,struts2,wildcard,struts2-json-plugin,Java,Json,Struts2,Wildcard,Struts2 Json Plugin,在mystruts.xml中,遵循一种约定来调用特定操作类的操作,如下所示: struts.xml: pages/ConfigureTspThresholdInput.jsp 我通过通配符获取方法名,ConfigureTspThresholdAction是类名 我正在使用struts2 json插件将数据转换为json。现在,对于一些操作,我想使用Struts2 JSON插件返回JSON数据 因此,我需要使用extendsjson default和result typejson来执行以下操作
struts.xml
中,遵循一种约定来调用特定操作类的操作,如下所示:
struts.xml
:
pages/ConfigureTspThresholdInput.jsp
我通过通配符获取方法名,ConfigureTspThresholdAction
是类名
我正在使用struts2 json插件
将数据转换为json。现在,对于一些操作,我想使用Struts2 JSON插件返回JSON数据
因此,我需要使用extendsjson default
和result typejson
来执行以下操作:
tspNameIdMap
阈值参数
因此,不同的排除属性具有相同的结果类型json
如何使这些JSON结果类型符合所遵循的约定
由于最后两个操作将发生冲突,因为它们具有相同的结果类型
json
?选项之一是在结果配置中使用动态参数。在执行结果之前,始终可以修改操作中的结果。看答案
您可以使用一个动态参数作为结果,请参阅配置
在动作中,您应该为参数编写一个getter
private String actionUrl;
public String getActionUrl() {
return actionUrl;
}
并配置结果
<action name="create" class="CreateAction">
<result type="redirect">${actionUrl}</result>
</action>
${actionUrl}
其中一个选项是在结果配置中使用动态参数。在执行结果之前,始终可以修改操作中的结果。看答案 您可以使用一个动态参数作为结果,请参阅配置 在动作中,您应该为参数编写一个getter
private String actionUrl;
public String getActionUrl() {
return actionUrl;
}
并配置结果
<action name="create" class="CreateAction">
<result type="redirect">${actionUrl}</result>
</action>
${actionUrl}
我要做的是在action类中创建一个属性
myexcludedProperties
然后在操作方法中,设置此myexcludedProperties
然后将动作映射更改为
<action name="*ConfigureTspThreshold" class="cdot.oss.cmsat.gma.struts.ConfigureTspThresholdAction"
method="{1}">
<result type="json">
<param name="excludeProperties">
${myexcludedProperties}
</param>
</result>
</action>
${myexcludedProperties}
我相信${myexcludedProperties}
是正确的语法
如果不想对属性进行编码,则必须找出如何区分请求(method=“{1}”
),以便设置正确的参数
希望这是有道理的 我要做的是在action类中创建一个属性
myexcludedProperties
然后在操作方法中,设置此myexcludedProperties
然后将动作映射更改为
<action name="*ConfigureTspThreshold" class="cdot.oss.cmsat.gma.struts.ConfigureTspThresholdAction"
method="{1}">
<result type="json">
<param name="excludeProperties">
${myexcludedProperties}
</param>
</result>
</action>
${myexcludedProperties}
我相信${myexcludedProperties}
是正确的语法
如果不想对属性进行编码,则必须找出如何区分请求(method=“{1}”
),以便设置正确的参数
希望这是有道理的 在操作中放入不同的结果,并从方法返回不同的结果代码。@AleksandrM:result必须是JSON。我不明白你的意思。你能通过一些代码详细说明或解释吗???你如何确定哪些财产需要排除?这个问题一点也不清楚。请编辑它,准确地解释你想要什么,以及你在尝试实现它时遇到了哪些问题。在不知道问题的情况下回答问题是很困难的。在操作中放入不同的结果,并从方法返回不同的结果代码。@AleksandrM:result必须是JSON。我不明白你的意思。你能通过一些代码详细说明或解释吗???你如何确定哪些财产需要排除?这个问题一点也不清楚。请编辑它,准确地解释你想要什么,以及你在尝试实现它时遇到了哪些问题。在不知道问题的情况下很难回答问题。