Hi,

Does any one have a working mapping of a bidirectional n:m relationship that 
they could share?  I've been trying with various settings with no luck.  My 
current xdoclet declarations for the relationship between Organsiation and 
Period entities are below, but I'm getting the exception listed below the code. 

        /**
         * @ejb.relation
         *  name="Organisation-Period"
         *  role-name="periods-have-organisations"
         * @weblogic.column-map
         *  key-column="C_ID"
         *  foreign-key-column="C_PERIOD_ID"
         * @weblogic.relation
         *      join-table-name="MPRS_ORGANISATION_PERIOD_JOIN"
         * @ejb.interface-method
         *  view-type="local"
         * @ejb.value-object
         *  aggregate="au.gov.qld.des.mprs.dto.OrganisationTransferObject"
         *  aggregate-name="Organisation"
        *  members="au.gov.qld.des.mprs.ejb.OrganisationLocal"
        *  members-name="OrganisationLocal"
         *  relation="external"
         *  type="java.util.Collection"
         */
        public abstract Collection getOrganisations();


        /**
         * @ejb.relation
         *  name="Organisation-Period"
         *  role-name="organisations-have-periods"
         * @weblogic.column-map
         *  key-column="C_ID"
         *  foreign-key-column="C_ORGANISATION_ID"
         * @weblogic.relation
         *      join-table-name="MPRS_ORGANISATION_PERIOD_JOIN"
         * @ejb.interface-method
         *  view-type="local"
         * @ejb.value-object
        *  aggregate="au.gov.qld.des.mprs.dto.PeriodTransferObject"
         *  aggregate-name="Period"
         *  members="au.gov.qld.des.mprs.ejb.PeriodLocal"
        *  members-name="PeriodLocal"
         *  relation="external"
         *  type="java.util.Collection"
         *
         */
        public abstract java.util.Collection getPeriods();

Exception occurred: au.gov.qld.des.mprs.exception.ServiceUnavailableException: 
Exception occured getting Financial Years Caused By: 
au.gov.qld.des.mprs.exception.ServiceUnavailableException: Error occurred 
Caused By: au.gov.qld.des.mprs.exception.ServiceUnavailableException: Exception 
converting Caused By: javax.ejb.TransactionRolledbackLocalException: EJB 
Exception: ; nested exception is: javax.ejb.EJBException: nested exception is: 
javax.ejb.TransactionRolledbackLocalException: EJB Exception: ; nested 
exception is: javax.ejb.EJBException: nested exception is: 
javax.ejb.TransactionRolledbackLocalException: [EJB:010180]Illegal Reentrant 
call to 'Period(Application: mprs-ear-1.0, EJBComponent: mprs-ejb-1.0.jar)' 
with primary key: '1'.: weblogic.ejb20.InternalException: [EJB:010180]Illegal 
Reentrant call to 'Period(Application: mprs-ear-1.0, EJBComponent: 
mprs-ejb-1.0.jar)' with primary key: '1'. at 
weblogic.ejb20.manager.BaseEntityManager.checkForReentrant(Ljavax.ejb.EntityBean;Ljava.lang.Object;)V(BaseEntityManager.java:1468)
 at 
weblogic.ejb20.manager.DBManager.preInvoke(Lweblogic.ejb20.internal.InvocationWrapper;)Ljavax.ejb.EnterpriseBean;(DBManager.java:251)
 at 
weblogic.ejb20.internal.BaseEJBLocalObject.preInvoke(Lweblogic.ejb20.internal.InvocationWrapper;)Lweblogic.ejb20.internal.InvocationWrapper;(BaseEJBLocalObject.java:228)
 at 
weblogic.ejb20.internal.EntityEJBLocalObject.preInvoke(Lweblogic.ejb20.internal.MethodDescriptor;Lweblogic.security.service.ContextHandler;)Lweblogic.ejb20.internal.InvocationWrapper;(EntityEJBLocalObject.java:72)
 at 
au.gov.qld.des.mprs.ejb.Period_a31n8k_ELOImpl.getPeriodTransferObject()Lau.gov.qld.des.mprs.dto.PeriodTransferObject;(Period_a31n8k_ELOImpl.java:514)
 at 
au.gov.qld.des.mprs.ejb.OrganisationCMP.getOrganisationTransferObject()Lau.gov.qld.des.mprs.dto.OrganisationTransferObject;(OrganisationCMP.java:102)
 at 
au.gov.qld.des.mprs.ejb.Organisation_smb3qq_ELOImpl.getOrganisationTransferObject()Lau.gov.qld.des.mprs.dto.OrganisationTransferObject;(Organisation_smb3qq_ELOImpl.java:585)
 at 
au.gov.qld.des.mprs.ejb.PeriodCMP.getPeriodTransferObject()Lau.gov.qld.des.mprs.dto.PeriodTransferObject;(PeriodCMP.java:106)
 at 
au.gov.qld.des.mprs.ejb.Period_a31n8k_ELOImpl.getPeriodTransferObject()Lau.gov.qld.des.mprs.dto.PeriodTransferObject;(Period_a31n8k_ELOImpl.java:531)
 at 
au.gov.qld.des.mprs.ejb.MPRSFacadeBean.convertPeriodLocalsToDTOs(Ljava.util.Collection;)Ljava.util.Collection;(MPRSFacadeBean.java:281)
 at 
au.gov.qld.des.mprs.ejb.MPRSFacadeBean.findFinancialYears()Ljava.util.Collection;(MPRSFacadeBean.java:222)
 at 
au.gov.qld.des.mprs.ejb.MPRSFacade_vhf35m_EOImpl.findFinancialYears()Ljava.util.Collection;(MPRSFacade_vhf35m_EOImpl.java:154)
 at 
au.gov.qld.des.mprs.ejb.MPRSFacade_vhf35m_EOImpl_CBV.findFinancialYears()Ljava.util.Collection;(Unknown
 Source) at 
au.gov.qld.des.mprs.business.MPRSBusinessDelegate.findFinancialYears()Ljava.util.Collection;(MPRSBusinessDelegate.java:83)
 at 
au.gov.qld.des.mprs.FinancialYearAction.view(Lorg.apache.struts.action.ActionMapping;Lorg.apache.struts.action.ActionForm;Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)Lorg.apache.struts.action.ActionForward;(FinancialYearAction.java:43)
 at 
jrockit.reflect.NativeMethodInvoker.invoke0(Ljava.lang.Object;ILjava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown
 Source) at 
jrockit.reflect.NativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown
 Source) at 
jrockit.reflect.VirtualNativeMethodInvoker.invoke(Ljava.lang.Object;[Ljava.lang.Object;)Ljava.lang.Object;(Unknown
 Source) at 
java.lang.reflect.Method.invoke(Ljava.lang.Object;[Ljava.lang.Object;I)Ljava.lang.Object;(Unknown
 Source) at 
org.apache.struts.actions.DispatchAction.dispatchMethod(Lorg.apache.struts.action.ActionMapping;Lorg.apache.struts.action.ActionForm;Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;Ljava.lang.String;)Lorg.apache.struts.action.ActionForward;(DispatchAction.java:274)
 at 
org.apache.struts.actions.DispatchAction.execute(Lorg.apache.struts.action.ActionMapping;Lorg.apache.struts.action.ActionForm;Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)Lorg.apache.struts.action.ActionForward;(DispatchAction.java:194)
 at 
org.apache.struts.actions.MappingDispatchAction.execute(Lorg.apache.struts.action.ActionMapping;Lorg.apache.struts.action.ActionForm;Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)Lorg.apache.struts.action.ActionForward;(MappingDispatchAction.java:169)
 at 
org.apache.struts.action.RequestProcessor.processActionPerform(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;Lorg.apache.struts.action.Action;Lorg.apache.struts.action.ActionForm;Lorg.apache.struts.action.ActionMapping;)Lorg.apache.struts.action.ActionForward;(RequestProcessor.java:419)
 at 
org.apache.struts.action.RequestProcessor.process(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(RequestProcessor.java:224)
 at 
org.apache.struts.action.ActionServlet.process(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(ActionServlet.java:1194)
 at 
org.apache.struts.action.ActionServlet.doGet(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(ActionServlet.java:414)
 at 
javax.servlet.http.HttpServlet.service(Ljavax.servlet.http.HttpServletRequest;Ljavax.servlet.http.HttpServletResponse;)V(HttpServlet.java:740)
 at 
javax.servlet.http.HttpServlet.service(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(HttpServlet.java:853)
 at 
weblogic.servlet.internal.ServletStubImpl$ServletInvocationAction.run()Ljava.lang.Object;(ServletStubImpl.java:996)
 at 
weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;Lweblogic.servlet.internal.FilterChainImpl;)V(ServletStubImpl.java:419)
 at 
weblogic.servlet.internal.ServletStubImpl.invokeServlet(Ljavax.servlet.ServletRequest;Ljavax.servlet.ServletResponse;)V(ServletStubImpl.java:315)
 at 
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run()Ljava.lang.Object;(WebAppServletContext.java:6452)


Regards,

Vang Nguyen
Enterprise Application Programmer
Department of Emergency Services
(61-7) 3247 8586


This correspondence is for the named persons only.
It may contain confidential or privileged information or both.
No confidentiality or privilege is waived or lost by any mis transmission.
If you receive this correspondence in error please delete it from your system 
immediately and notify the sender.
You must not disclose, copy or relay on any part of this correspondence, if you 
are not the intended recipient.
Any opinions expressed in this message are those of the individual sender 
except where the sender expressly,
and with the authority, states them to be the opinions of the Department of 
Emergency Services, Queensland.


-------------------------------------------------------
SF.Net email is Sponsored by the Better Software Conference & EXPO
September 19-22, 2005 * San Francisco, CA * Development Lifecycle Practices
Agile & Plan-Driven Development * Managing Projects & Teams * Testing & QA
Security * Process Improvement & Measurement * http://www.sqe.com/bsce5sf
_______________________________________________
xdoclet-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/xdoclet-user

Reply via email to