将 java 对象文件值分配给 jsp 变量

Pan*_*ong 1 java variables jsp object assign

以下是我的jsp代码的一部分:

${cForm.cId} <!-- I can see this value displayed correctly --%>
    <%! String i = ${cForm.cId}; %> 
    <td class="value">
        <img src="/supportcenter/cServlet?sampleImg=<%=i %>" width="300px" />
    </td>
Run Code Online (Sandbox Code Playgroud)

cForm是我的 java 对象文件,我可以看到浏览器中正确显示的${cForm.cId}.

但是,当我想将值分配给字符串i变量时,我不断遇到failed to compile :jsp错误。

好心提醒。

Lui*_*oza 5

您不能在 scriptlet 中混合表达语言。您应该仅使用 scriptlet 或仅使用表达式语言。

要修复当前错误,请从请求(或存储该属性的任何位置)检索该属性:

<% String i = ((CForm)request.getAttribute("cForm")).getId(); %>
Run Code Online (Sandbox Code Playgroud)

要真正解决您的问题:完全停止使用 scriplet,将其全部保留在表达式语言中:

<% String i = ((CForm)request.getAttribute("cForm")).getId(); %>
Run Code Online (Sandbox Code Playgroud)