Trying to get a specific data from my view.
Code:
The mapping file is:
<class
name="com.usg.domain.images.PopupImages"
table="VW_POPUP_IMAGES"
>
<composite-id>
<key-property
name="id"
column="ID"
type="java.lang.String"
length="16"
/>
<key-property
name="mktgDesc"
column="MKTG_DESC"
type="java.lang.String"
length="255"
/>
<key-property
name="imageId"
column="IMAGE_ID"
type="java.lang.String"
length="255"
/>
<key-property
name="webUrl"
column="WEB_URL"
type="java.lang.String"
length="544"
/>
<key-property
name="imageName"
column="IMAGE_NAME"
type="java.lang.String"
length="255"
/>
</composite-id>
Code:
The java file is:
package com.usg.domain.images;
import java.io.Serializable;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;
/** @author Hibernate CodeGenerator */
public class PopupImages implements Serializable {
/** identifier field */
private String id;
/** identifier field */
private String mktgDesc;
/** identifier field */
private String imageId;
/** identifier field */
private String webUrl;
/** identifier field */
private String imageName;
/** full constructor */
public PopupImages(String id, String mktgDesc, String imageId, String webUrl, String imageName) {
this.id = id;
this.mktgDesc = mktgDesc;
this.imageId = imageId;
this.webUrl = webUrl;
this.imageName = imageName;
}
/** default constructor */
public PopupImages() {
}
public String getId() {
return this.id;
}
public void setId(String id) {
this.id = id;
}
public String getMktgDesc() {
return this.mktgDesc;
}
public void setMktgDesc(String mktgDesc) {
this.mktgDesc = mktgDesc;
}
public String getImageId() {
return this.imageId;
}
public void setImageId(String imageId) {
this.imageId = imageId;
}
public String getWebUrl() {
return this.webUrl;
}
public void setWebUrl(String webUrl) {
this.webUrl = webUrl;
}
public String getImageName() {
return this.imageName;
}
public void setImageName(String imageName) {
this.imageName = imageName;
}
public String toString() {
return new ToStringBuilder(this)
.append("id", getId())
.append("mktgDesc", getMktgDesc())
.append("imageId", getImageId())
.append("webUrl", getWebUrl())
.append("imageName", getImageName())
.toString();
}
public boolean equals(Object other) {
if ( !(other instanceof PopupImages) ) return false;
PopupImages castOther = (PopupImages) other;
return new EqualsBuilder()
.append(this.getId(), castOther.getId())
.append(this.getMktgDesc(), castOther.getMktgDesc())
.append(this.getImageId(), castOther.getImageId())
.append(this.getWebUrl(), castOther.getWebUrl())
.append(this.getImageName(), castOther.getImageName())
.isEquals();
}
public int hashCode() {
return new HashCodeBuilder()
.append(getId())
.append(getMktgDesc())
.append(getImageId())
.append(getWebUrl())
.append(getImageName())
.toHashCode();
}
}
In my struts action i do a:
Code:
String chronicleID = request.getParameter( "ichronicleid" );
session = SessionHelper.getSession();
Query q = session.createQuery( "from PopupImages p where p.id = :id" ).setString( "id", chronicleID ) ;
result = q.list();
The error I am getting is:
com.usg.exception.SystemException: path expression ends in a composite value: popupimage0_.id [from com.usg.domain.images.PopupImages p where p.id = :id]
at com.usg.struts.action.ViewMoreImagesAction.getMoreImages(ViewMoreImagesAction.java:165)
at com.usg.struts.action.ViewMoreImagesAction.execute(ViewMoreImagesAction.java:82)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1053)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:387)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6310)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3622)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2569)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
net.sf.hibernate.QueryException: path expression ends in a composite value: popupimage0_.id [from com.usg.domain.images.PopupImages p where p.id = :id]
at net.sf.hibernate.hql.PathExpressionParser.getWhereColumn(PathExpressionParser.java:370)
at net.sf.hibernate.hql.WhereParser.doPathExpression(WhereParser.java:352)
at net.sf.hibernate.hql.WhereParser.doToken(WhereParser.java:366)
at net.sf.hibernate.hql.WhereParser.token(WhereParser.java:251)
at net.sf.hibernate.hql.ClauseParser.token(ClauseParser.java:87)
at net.sf.hibernate.hql.PreprocessingParser.token(PreprocessingParser.java:123)
at net.sf.hibernate.hql.ParserHelper.parse(ParserHelper.java:29)
at net.sf.hibernate.hql.QueryTranslator.compile(QueryTranslator.java:149)
at net.sf.hibernate.hql.QueryTranslator.compile(QueryTranslator.java:138)
at net.sf.hibernate.impl.SessionFactoryImpl.getQuery(SessionFactoryImpl.java:293)
at net.sf.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:1493)
at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1464)
at net.sf.hibernate.impl.QueryImpl.list(QueryImpl.java:39)
at com.usg.struts.action.ViewMoreImagesAction.getMoreImages(ViewMoreImagesAction.java:143)
at com.usg.struts.action.ViewMoreImagesAction.execute(ViewMoreImagesAction.java:82)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:507)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run(ServletStubImpl.java:1053)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:387)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:305)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:6310)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:317)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:118)
at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:3622)
at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:2569)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
>