java - 为什么 JSP 没有获取 Struts 2 操作字段

标签 java hibernate jsp struts2 ognl

我在 jsp 页面中打印字段时遇到了一些问题。我已经使用 hibernate 管理了持久性。

当我进入jsp页面时,它什么也不显示。如何修改 jsp 以打印 scontrino 的 prodotti 字段?

Action 类

public class ScontrinoStruts extends ActionSupport implements UserAware{
        
        private static java.lang.Float iva = 22.00f;
        
        private String valori;
    
        private int idScontrino;
        private Date data;
        private java.lang.Float importoTotale;
        private int totalePezzi;
        
        private int ID_Anagrafica;//idanagrafica
        private Anagrafica anagrafica;
        private AnagraficaDAO anagraficaDAO = AnagraficaDAOFactory.getDAO();
        
        private int idProdotto;
        private List<Prodotto> prodotti = new ArrayList<Prodotto>();
        private Prodotto prodotto;
    
        private Scontrino scontrino = new Scontrino();
        List<Scontrino> scontrini = new ArrayList<Scontrino>();
        ScontrinoDAO scontrinoDAO = ScontrinoDAOFactory.getDAO();
        ProdottoDAO prodottoDAO = ProdottoDAOFactory.getDAO();
        
        public String showScontrino(){
            scontrino = scontrinoDAO.getScontrino(idScontrino);
            return "success";
        }
        //getters and setters
    }

struts.xml

    <action name="showScontrino" method="showScontrino"
        class="it.unirc.pjam.Action.ScontrinoStruts">
        <result name="success">/scontrino.jsp</result>
    </action>

JSP

    <table>
        <tr>
            <td>id</td>
            <td>Descrizione</td>
            <td>prezzo</td>
        </tr>
        <s:iterator value="scontrino.prodotti">
            <tr>
                <td><s:property value="idProdotto" /></td>
                <td><s:property value="descrizione" /></td>
                <td><s:property value="prezzo" /></td>
            </tr>
        </s:iterator>
    </table>

最佳答案

通过 OGNL 表达式显示的字段,用于遍历对象属性以查找值。 value 等属性用于在返回其值之前首先解析 OGNL 表达式。您可以在 this 中找到如何评估 OGNL 表达式。回答。

您还可以阅读this回答以了解 OGNL 在搜索值时使用的操作上下文是什么。

This答案将指导您如何为迭代的列表提供 getter。

通过 this 深入学习 OGNL 语言指南回答。

This答案将教你如何使用点表示法访问bean的属性。

关于java - 为什么 JSP 没有获取 Struts 2 操作字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44978769/

相关文章:

java - 将 Boolean 更改为 boolean 会在 MapStruct 中引发 noSuchMethodError

javascript - 刷新内部包含 JSP 代码片段的 DIV 元素

jsp - Struts标签与JSTL

java - 如何将 3 个单独的程序放入 JTabbedPane 中。它们已经为 JFrame 编写

java - Java EE 中的 CDI - 哪些 Java 类不能注入(inject)?

java - 如何使用 MySQL Connector/J 直接检索 UTC OffsetDateTime?

java - Spring序列化时如何忽略临时对象属性

java - JPA LockModeType.PESSIMISTIC_WRITE 无法按预期工作。没有 key 的应用程序,在锁定时读取数据库快照

java - 将 Hibernate 添加到 Android 项目(核心类的错误使用)

java - 在所有页面的 &lt;title&gt; 中添加图像