Java html中的变量属性名称:文本标记

Java html中的变量属性名称:文本标记,java,html,jsp,struts,struts-1,Java,Html,Jsp,Struts,Struts 1,我正在使用struts-1,并希望在html:text标记中使用一个关联字符串作为属性名。该字符串由一个静态字符串和一个jsp:include标记给出的参数组成 包含部分 <jsp:include page="test.jsp"> <jsp:param name="language" value="DE" /> </jsp:include> Param: ${param.language} <html:t

我正在使用struts-1,并希望在html:text标记中使用一个关联字符串作为属性名。该字符串由一个静态字符串和一个jsp:include标记给出的参数组成

包含部分

    <jsp:include page="test.jsp">
        <jsp:param name="language" value="DE" />
    </jsp:include>
    Param: ${param.language}
    <html:text property="propertyDE" name="bean" />

html:text

    <jsp:include page="test.jsp">
        <jsp:param name="language" value="DE" />
    </jsp:include>
    Param: ${param.language}
    <html:text property="propertyDE" name="bean" />
Param:${Param.language}
无法工作的html:文本代码

    Param: ${param.language}
    <html:text property="<%="property" + param.language%>" name="bean" />
Param:${Param.language}
有没有办法在html:text中的property属性中使用动态值?如何实现这一点?

您可以使用:

<c:set var="language" value="DE" />

导入


然后将变量用作
${language}

更简单的方法是按如下方式使用它:

<html:text property="property${param.language}" name="bean" />


还有
,具体取决于您的偏好。一个解决方案是按如下方式压缩字符串,并在html:text中按如下方式使用它:您是否刚刚尝试过在没有
的情况下使用
${param.language}
,这不是问题所在。我在连接静态字符串“property”和${param.language}时遇到了问题。是的,这是我最后的评论。实际上,你也可以在你的服务器上创建这个变量,然后在你的作用域中使用它,请求,会话等等。。。这样比较容易维持,也许你误解了我的意图。我想在struts-1中创建一个jsf复合组件。因此,我将jsp:include与jsp:param一起使用。包含的jsp看起来总是一样的。唯一的区别是getter和setter方法中的语言后缀