1 Reply Latest reply on Nov 21, 2007 10:58 AM by evdelst

    outer joins with seam

      hi,
      I wonder if there is a special syntax for defining queries with outer joins in seam.
      I am trying this query defined in my components.xml file

       <framework:entity-query name="innerJoinQueryList"
       ejbql="select instruFund, instru, cash
       FROM InstrumentFund instruFund
       left outer JOIN Instrument instru
       ON instruFund.id.idAsset = instru.internalOptionNumber
       left outer JOIN Cash cash
       ON instruFund.id.idAsset = cash.idCash">
       </framework:entity-query>
      


      I am using this query from a xhtml file (called RstReportInstruValuList.xhtml ) this way

      <rich:dataTable id="innerJoinQueryList"
       var="innerJoinQueryInfo"
       value="#{innerJoinQueryList.resultList}" >
       <h:column>
       <f:facet name="header">
       <s:link styleClass="columnHeader"
       value="#{messages['instru.securityName']}">
       </s:link>
       </f:facet>
       #{innerJoinQueryInfo.instru.securityName}
       </h:column>
       <h:column>
       <f:facet name="header">
       <s:link styleClass="columnHeader"
       value="#{messages['cash.securityName']}">
       </s:link>
       </f:facet>
       #{innerJoinQueryInfo.cash.securityName}
       </h:column>
       </rich:dataTable>
      


      I have this error:


      An Error Occurred:
      /RstReportInstruValuList.xhtml @157,13 value="#{innerJoinQueryList.resultList}": org.jboss.seam.framework.EntityQuery_$$_javassist_1721


      Is there a special syntax for defining queries with joins?
      thanks in advance!

        • 1. Re: outer joins with seam
          evdelst

          this is really a JPA question, not Seam.

          But you should map the relations with a @ManyToOne
          Left outer join is not supported in a query, but 'left join fetch' should do what you want, once you map the entities correctly!