gpt4 book ai didi

java - 在 Struts2 上显示属性时出现问题

转载 作者:行者123 更新时间:2023-12-02 08:22:21 24 4
gpt4 key购买 nike

我有以下操作类:

package com.pendulum.web;

import java.util.ArrayList;
import java.util.List;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts2.ServletActionContext;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.opensymphony.xwork2.ModelDriven;
import com.pendulum.dao.DocumentoDAO;
import com.pendulum.domain.Documento;
import com.pendulum.domain.DocumentoPK;

public class DocumentoAction extends ActionSupport implements ModelDriven<Documento>{

private static final long serialVersionUID = 8757127171831894323L;
private Documento documento = new Documento();
private List<Documento> documentList = new ArrayList<Documento>();
private DocumentoDAO documentoDAO = new DocumentoDAO();
private Documento currDocument = new Documento();
private DocumentoPK documentoPK = new DocumentoPK();

@Override
public Documento getModel() {
return documento;
}

public Documento getDocumento() {
return documento;
}

public void setDocumento(Documento documento) {
this.documento = documento;
}

public List<Documento> getDocumentList() {
return documentList;
}

public void setDocumentList(List<Documento> documentList) {
this.documentList = documentList;
}

public String listDocument()
{
HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST);
documentList = documentoDAO.listDocumentsByCreditId(request.getParameter("creditId"));
if (documentList.size()>0) {
currDocument = documentList.get(0);
documentoPK = currDocument.getDocumentoPK();
}

System.err.println(documentList.size());
System.err.println(currDocument.getDocumentoPK().getCreditoId());
System.err.println(currDocument.getOrigenId());
return SUCCESS;
}

public DocumentoDAO getDocumentoDAO() {
return documentoDAO;
}

public void setDocumentoDAO(DocumentoDAO documentoDAO) {
this.documentoDAO = documentoDAO;
}

public Documento getCurrDocument() {
return currDocument;
}

public void setCurrDocument(Documento currDocument) {
this.currDocument = currDocument;
}

public DocumentoPK getDocumentoPK() {
return documentoPK;
}

public void setDocumentoPK(DocumentoPK documentoPK) {
this.documentoPK = documentoPK;
}


}

我的问题是,在我的 View (.jsp) 中,我可以从 currDocument 获取属性,但无法获取 DocumentoPK 内的属性。

DocumentoPK 是一个在其自己的类上声明的 hibernate 复合键,并在每个 Documento bean 上实例化,但是......在我的 jsp 中我有:

<table class="userTable" cellpadding="5px">
<tr class="even">
<td><s:property value="currDocument.origenId"/></td>
<td><s:property value="documentoPK.creditId"/></td>
<td><s:property value="currDocument.documentoPK.creditId"/></td>
<td><s:property value="creditId"/></td>
</tr>
</table>

但只有第一个值被渲染...并且不知道我是否遗漏了一些明显的东西。非常感谢任何帮助!尤尔塔多

最佳答案

由于 DocumentoPK 上的 getter 是 getCreditoId(),因此 OGNL 属性不应该在以下位置命名为 creditoId:

<td><s:property value="documentoPK.creditId"/></td>
<td><s:property value="currDocument.documentoPK.creditId"/></td>

关于java - 在 Struts2 上显示属性时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5253220/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com