Security issue between weblogic server

Hello,
Here is security issue that we are facing.
Here is setup
Environment 1
Admin server say "env1admin"
Managed Weblogic Server say "env1managed"
We deployed an EJB called HelloEJB in env1managed server and this has an api
sayHello(). HelloClient is a client to HelloEJB.
S/w Weblogic 6.1 sp3
Environment 2
Admin server say "env2admin"
Managed Weblogic Server say "env2managed"
We deployed an EJB called ServiceEJB in env2managed server and this has an api
serviceRequest(). We use weblogic role based security and restrict access to this
api by user HelloEJB.
s/w Weblogic 6.1 sp3
Here is how the system works:
We start the env2admin, env2managed (ServiceEJB is which is a Stateless session
EJB deployed in env2Managed)
We start the env1admin and env1managed (HelloEJB(which is a Stateless session
EJB is deployed in env1Managed)
Test case:
1)HelloClient invokes HelloEJB api sayHello().
2)Now at this point in ejbCreate() at HelloEJB() end we get a reference to ServiceEJB
using Jndi and the context is never closed ). HelloEJB then calls serviceRequest()
api in ServiceEJB. Then gets back a response and then returns response to HelloClient.
Now if we repeat the above testcase.
After step1 in step2 HelloEJB though has all the permissions to invoke api on
ServiceEJB gets an SecurityException.
Question is why doe this happen. Only way HelloEJB can make api calls to serviceEJB
is by making a lookup() every single time. Which is very expensive. I looked at
documents what they say is leave the context open and never close it. Though I
am doing that I am getting this exception.
Any thoughts ?
Thanks in advance,
Vijay

Here are the details of exception stack trace:
java.rmi.AccessException: Security violation: insufficient permission to access
method; nested exception is:
java.lang.SecurityException: Security violation: insufficient permission
to access method
java.lang.SecurityException: Security violation: insufficient permission to access
method
at weblogic.ejb20.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:92)
at weblogic.ejb20.internal.StatelessEJBObject.preInvoke(StatelessEJBObject.java:63)
at service.ServiceBean_nr0s19_EOImpl.sendServiceRequest(ServiceBean_nr0s19_EOImpl.java:25)
at service.ServiceBean_nr0s19_EOImpl_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:298)
at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:93)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:267)
at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:22)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:139)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
End server side stack trace
; nested exception is:
Vijay
"Vijay" <[email protected]> wrote:
>
Hello,
Here is security issue that we are facing.
Here is setup
Environment 1
Admin server say "env1admin"
Managed Weblogic Server say "env1managed"
We deployed an EJB called HelloEJB in env1managed server and this has
an api
sayHello(). HelloClient is a client to HelloEJB.
S/w Weblogic 6.1 sp3
Environment 2
Admin server say "env2admin"
Managed Weblogic Server say "env2managed"
We deployed an EJB called ServiceEJB in env2managed server and this has
an api
serviceRequest(). We use weblogic role based security and restrict access
to this
api by user HelloEJB.
s/w Weblogic 6.1 sp3
Here is how the system works:
We start the env2admin, env2managed (ServiceEJB is which is a Stateless
session
EJB deployed in env2Managed)
We start the env1admin and env1managed (HelloEJB(which is a Stateless
session
EJB is deployed in env1Managed)
Test case:
1)HelloClient invokes HelloEJB api sayHello().
2)Now at this point in ejbCreate() at HelloEJB() end we get a reference
to ServiceEJB
using Jndi and the context is never closed ). HelloEJB then calls serviceRequest()
api in ServiceEJB. Then gets back a response and then returns response
to HelloClient.
Now if we repeat the above testcase.
After step1 in step2 HelloEJB though has all the permissions to invoke
api on
ServiceEJB gets an SecurityException.
Question is why doe this happen. Only way HelloEJB can make api calls
to serviceEJB
is by making a lookup() every single time. Which is very expensive. I
looked at
documents what they say is leave the context open and never close it.
Though I
am doing that I am getting this exception.
Any thoughts ?
Thanks in advance,
Vijay

Similar Messages

  • Enabling Trust Between WebLogic Server Domains

    Hi everyone,
    We have two sites, each one running one WL 8.1 instance. The problem is that we have different users in each one, and they need to access both sites (using a RMI call).
    When the user is created in both sites, there is no problem. But we do not want to replicate all users in all sites.
    So this is what we are trying to do:
    Create the user in one site and enable trust between Weblogic Server domains (giving both sites the same password), so once one user is authenticated, the other site will not try to authenticate this user again. But since this user does not exist in the other site, he has no permission to do anything at all. Because of that we receive the following error message: "User a7ax does not have permission on br to perform lookup operation."
    Does anyone have any idea about how we can handle this, and enable the users to use other sites, without creating the user in both sites?
    Thanks in advance.
    Cesar

    In order to debug this issue you need to determine which kind of security has been applied on the web service deployed on remote weblogic server.
    Whether it requires username/password from the calling web service ?
    or it requires any kind of digital certificate from the calling web service etc......
    the most usual secnario where cross-domain security is required is as:
    If a user- Test calls a service- ServiceA on Weblogic Domain-domainA and provides its credentials and is authenticated properly.
    Then if this service requires to call another service -ServiceB on another Weblogic Domain - DomainB which is also secured then there should be a cross-domain trust should be enabled between the domains DomainA and DomainB so that the subject populated in the domainA can be transferred to DomainB.
    Now you should determine whether this is the secnario you are trying to achieve or it is something else.
    Also try to use the following debug flag in the DomainB where the provider service is deployed to get the exact reason why it is failing to verify the security check.
    -Dweblogic.DebugSecurityAtn=true
    This debug flag is enabled as JAVA_OPTIONS.
    Thanks,
    Sandeep

  • Issue in Weblogic Server - Server Stops abruptly

    Hi All,
    I am facing an issue with Weblogic server(8.1). One of the managed servers stops abruptly. Server run for some days. After 5 or 6 days it stops without giving any log message. Admin(mgt server) and this managed server are running in the same box(AIX Environment). Below is the only log I got. Any idea why it is happening?
    According to the BEA Message it may be due to network problem. Since both the servers are running in same box, i don't think it is network issue.
    Can anyone please help me on this? - thanks in advance
    Log Trace Message:
    ==================
    <AF[196]: Allocation Failure. need 528 bytes, 67173345 ms since last AF>
    <AF[196]: managing allocation failure, action=1 (0/1040390840) (32611304/33283912)>
    <GC(197): freeing class jsp_servlet._ofr._invoice._shipper._jsp.__exceptioninvoicelist(302453c8)>
    <GC(197): freeing class jsp_servlet._lcom._common._jsp.__page_navigation(3024ecc8)>
    <Dec 21, 2005 10:47:18 PM KST> <Warning> <Management> <BEA-141138> <Managed Server ofrserver is disconnected from the ad
    min server. This may be either due to a managed server getting temporarily partitioned or the managed server process exi
    ting.>
    <GC(197): freeing class jsp_servlet._ofr._filter._jsp.__filterdetails(30252718)>
    <GC(197): freeing class jsp_servlet._lcom._admin._jsp.__devtools(3040f898)>
    <GC(197): freeing class jsp_servlet._lcom._admin._util._jsp.__devtoolslogin(3040f260)>
    <GC(197): freeing class jsp_servlet._lcom._admin._util._jsp.__processdevtoolslogin(30411870)>
    <GC(197): freeing class jsp_servlet._ofr._admin._util._jsp.__xmlcommmanagerimport(30413e58)>
    <GC(197): freeing class jsp_servlet._ofr._admin._util._jsp.__processxmlcommmanagerimport(30414a88)>
    <GC(197): unloaded and freed 8 classes>
    <GC(197): GC cycle started Wed Dec 21 22:47:23 2005
    <GC(197): freed 721499624 bytes, 70% free (754110928/1073674752), in 263157 ms>
    <GC(197): mark: 248258 ms, sweep: 1857 ms, compact: 13042 ms>
    <GC(197): refs: soft 0 (age >= 32), weak 0, final 27363, phantom 0>
    <GC(197): moved 0 objects, 0 bytes, IC reason=14>
    <GC(197): stop threads time: 1356, start threads time: 19>
    <AF[196]: completed in 282883 ms>
    Thanks,
    Shanmuga perumal
    [email protected]

    I think you should be able to follow the same steps but whenever you come across Domain B in the instructions, just substitute the values for Domain A. Because it is the same domain you may not even have to go through some of the certificate steps. If you have questions I suggest you post them in the WLS Security forum.
    WebLogic Server - Security

  • Powerview Cannot connect to the server due to a security issue. The server may not have been able to match the host for silverlight

    Hello,
    I have a sharepoint 2010 sp1 CU Dec 2011 server with a SQL Server 2012 SP1 CU4 reporting services instance.  I am able to open Power View and use it normally when bypassing the ISA Reverse Proxy server.  However when going thru ISA I receive the
    following Error.
    Power View  Cannot connect to the server due to a security issue.  The server may not have been able to match the host for Silverlight.  This error appears after I click yes on an Internet Explorer Display Mixed Mode prompt.
    I've seen a couple references to this issue but not much.  This one mentions a clientaccesspolicy.xml file but I haven't had any luck with that.  http://connect.microsoft.com/SQLServer/feedback/details/716433/cannot-connect-to-the-server-due-to-a-security-issue-the-server-may-not-have-been-able-to-match-the-host-for-silverlight
    Any Ideas?  Thanks.
    Ryan

    Hi Ryan,
    Based on my research, the issue should occur due to a by design behavior in Threat Management Gateway (TMG). To work around this issue, you can use SSL between the TMG and the SharePoint Web Server.
    Hope this helps.
    Regards,
    Mike Yin
    TechNet Community Support

  • How to use security roles in Weblogic server?

    Hello Gurus,
    I am new to Weblogic server and I am trying to investigate how to make
    use of security roles in weblogic server (5.1.0). Can anyone point me
    to some documentation. Specifically, I am looking for instance level,
    and method level security and how to use it.
    Thanks for taking your time to read this e-mail.
    Thank You all in advance,
    Hari.

    You should read the security information in the Servlet 2.2 specification
    that WL 5.1 implements:
    http://java.sun.com/products/servlet/download.html
    Chapter 11 deals with declarative and programmatic security, and includes a
    section on roles:
    11.4 Roles
    A role is an abstract logical grouping of users that is defined by the
    Application Developer or
    Assembler. When the application is deployed, these roles are mapped by a
    Deployer to security
    identities, such as principals or groups, in the runtime environment.
    A servlet container enforces declarative or programmatic security for the
    principal associated with
    an incoming request based on the security attributes of that calling
    principal. For example,
    1. When a deployer has mapped a security role to a user group in the
    operational environment. The
    user group to which the calling principal belongs is retrieved from its
    security attributes. If the
    principal's user group matches the user group in the operational environment
    that the security
    role has been mapped to, the principal is in the security role.
    2. When a deployer has mapped a security role to a principal name in a
    security policy domain, the
    principal name of the calling principal is retrieved from its security
    attributes. If the principal is
    the same as the principal to which the security role was mapped, the calling
    principal is in the
    security role.
    Cameron Purdy
    http://www.tangosol.com
    "Hari" <[email protected]> wrote in message
    news:[email protected]..
    Hello Gurus,
    I am new to Weblogic server and I am trying to investigate how to make
    use of security roles in weblogic server (5.1.0). Can anyone point me
    to some documentation. Specifically, I am looking for instance level,
    and method level security and how to use it.
    Thanks for taking your time to read this e-mail.
    Thank You all in advance,
    Hari.

  • Differences between Weblogic Server and Weblogic Server Suite?

    Hi
    What is the differences between Weblogic Server and Weblogic Server Suite, beside licens costs?
    Regards
    /Martin

    WebLogic server standard edition, you get the WebLogic with no clustering.
    Clustering is available in the WebLogic Enterprise Edition.
    The WebLogic Suite also gives you Coherence and JRockit real-time
    A desciption of the various products can be found here: http://www.oracle.com/us/products/middleware/application-server/index.html

  • Secure Communication between Weblogic 5.1 and IIS

    I have WL5.1 and IIS running on two separate machines. I've installed
    SSL certificates on IIS. So the traffic between the browser and IIS is
    encrypted.
    When the "iisforward" filter is used to forward servlet execute to
    Weblogic I get a message on the browser which says "You're about to be
    redirected to a connection which is not secure. The information you're
    sending to the current site might be retransmitted to a non-secure site. Do
    you wish to continue?"
    This makes sense as IIS does not know where the filter is forwarding this
    data. But how do I get rid of that message? There does not seem to be a way
    in 5.1 for the plugin/filter on IIS to communicate securely over SSL to the
    Weblogic server.
    Thanks,
    - Ayush

    Can you give more details on how you configured credentials on jboss end.
    post this on jboss forumn as the solution lies in jboss configuration not that of wls.

  • What is the difference between WebLogic Server users and Portal users

    Hi All
    What is the difference between users created in the WebLogic server and those
    created from the webLogic Portal Admin console.
    - leo

    Hi Leo,
    The WebLogic server console allows you to create users in the File realm (
    http://e-docs.bea.com/wls/docs61/adminguide/cnfgsec.html#1057106 , "Defining
    Users" ).
    The WebLogic Portal Admin console creates Portal users in the alternate security
    realm that was written to store user/password in the Portal schema. This realm is
    com.bea.p13n.security.realm.RDBMSRealm. See the javadoc for RDBMSRealm at (
    http://edocs.bea.com/wlp/docs40/javadoc/wlp/com/bea/p13n/security/realm/RDBMSRealm.html
    For information on alternate security realms see
    http://e-docs.bea.com/wls/docs61/security/prog.html#1041025 , "Writing a Custom
    Security Realm".
    For information on the File realm see
    http://e-docs.bea.com/wls/docs61/ConsoleHelp/security.html , "Security" and also
    search the WLS 6.1 docs for "File realm" for lots of other references.
    Leo wrote:
    Hi All
    What is the difference between users created in the WebLogic server and those
    created from the webLogic Portal Admin console.
    - leo--
    Ture Hoefner
    BEA Systems, Inc.
    2590 Pearl St.
    Suite 110
    Boulder, CO 80302
    www.bea.com

  • Issues starting weblogic server

    I get the following error in my Jdeveloper console whenever I try starting the webLogic server.
    <AnnotatedLogger> <logWithThrowable> JAXB marshaller creation fails due to underlying error "javax.xml.bind.PropertyException: property "com.sun.xml.bind.namespacePrefixMapper" must be an instance of type com.sun.xml.bind.marshaller.NamespacePrefixMapper, not oracle.wsm.resmgmt.ResourceMarshaller$ResourceNamespacePrefixMapper".
    javax.xml.bind.PropertyException: property "com.sun.xml.bind.namespacePrefixMapper" must be an instance of type com.sun.xml.bind.marshaller.NamespacePrefixMapper, not oracle.wsm.resmgmt.ResourceMarshaller$ResourceNamespacePrefixMapper
         at com.sun.xml.bind.v2.runtime.MarshallerImpl.setProperty(MarshallerImpl.java:502)
         at oracle.wsm.resmgmt.ResourceMarshaller$1.run(ResourceMarshaller.java:297)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.wsm.resmgmt.ResourceMarshaller.<init>(ResourceMarshaller.java:285)
         at oracle.wsm.resmgmt.ResourceMarshaller.<init>(ResourceMarshaller.java:263)
         at oracle.wsm.policymanager.accessor.BeanAccessor.buildIndexes(BeanAccessor.java:477)
         at oracle.wsm.policymanager.accessor.BeanAccessor.updateCache(BeanAccessor.java:1647)
         at oracle.wsm.policymanager.accessor.BeanAccessor.fetchDocuments(BeanAccessor.java:989)
         at oracle.wsm.policymanager.accessor.BeanAccessor.access$400(BeanAccessor.java:133)
         at oracle.wsm.policymanager.accessor.BeanAccessor$MissingDocsFetcherTask.run(BeanAccessor.java:208)
         at oracle.wsm.common.scheduler.TimerManagerWrapper$TimerListenerImpl.timerExpired(TimerManagerWrapper.java:57)
         at weblogic.timers.internal.commonj.ListenerWrap.timerExpired(ListenerWrap.java:37)
         at weblogic.timers.internal.TimerImpl.run(TimerImpl.java:273)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    <WsmMessageLogger> <logSevere> Failed to retrieve requested documents due to underlying error "javax.xml.bind.PropertyException: property "com.sun.xml.bind.namespac

    go to the below loacation and remove the system folder and try to start weblogic server it will ask to set the login credentials and port number,
    C:\Users\###\AppData\Roaming\JDeveloper
    let us know how it goes...

  • How to secure webservice in weblogic server?

    Hi,
    How many ways to secure a webservice in weblogic server? and what is the purpose of SSL ?

    How to run JSP and EJB program using weblogic server

  • BPM engine deployment issue on Weblogic server

    Hello,
    I read all threads related to this issue, but I am getting mad.
    Yesterday:
    I have successfully deployed BPM 10.3.1 + certified WLS 10.3.0 on Linux Redhat + Oracle
    I have successfully created a BPM configuration with the BPM Admin configuration wizard.
    I could successfully access to BPM workspace admin and BPM workskape.
    Today:
    I have restarted weblogic server and BPM, the engine is not starting, with an error raised in another thread. Below is the most detailed message:
    [EJB:011025]The XML parser encountered an error in your deployment descriptor. Please ensure that your DOCTYPE is correct. You may wish to compare your deployment descriptors with the WebLogic Server examples to ensure the format is correct. The error was:
    ParseError at [row,col]:[5,148]
    Message: Tried all: '1' addresses, but could not connect over HTTP to server: 'www.bea.com', port: '80'..
    weblogic.application.ModuleException: Exception preparing module: EJBModule(engine-soapocengine.jar)
    [EJB:011025]The XML parser encountered an error in your deployment descriptor. Please ensure that your DOCTYPE is correct. You may wish to compare your deployment descriptors with the WebLogic Server examples to ensure the format is correct. The error was:
    ParseError at [row,col]:[5,148]
    Message: Tried all: '1' addresses, but could not connect over HTTP to server: 'www.bea.com', port: '80'.
    at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:452)
    My server is not connected to the Internet, and will probably not. But it could not access the internet yesterday (before restart) neither...
    a reply to another thread says that a patch coprrects this issue. which one is it? please note I cannot download it from the server... I have downloaded all public patches for WLS 10.3 for Linux (ZIP files), but the BSU tool refused to detect them... how should I proceed?
    Thank you for your help
    Hervé

    Hi,
    I have downloaded weblogic from oracle downloads 2 weeks back. i thought all the patches would be installed?? But am facing the same issue when deploying engine ear..
    Do you think I need to install the above patch ???
    A month back I downloaded ( might be by March) Weblogic. I was not facing any issue. But with the new download am facing the issue.
    Kindly suggest.
    Thanks,
    Charan

  • BIBeans internationalization issue with weblogic server 8.1 sp2

    We use oralce bibeans 9.0.4 to develop OLAP web application in Chinsese Simplified environment. When deploy the web application on the embedded OC4J server, everything goes well. All the labels (Line items and image button labels etc. ) of the crosstab is displayed in chinese. but it always display English labels when delploy it on weblogic server V8.1 sp2.
    currently on my web page java.util.Locale.getDefault() return zh_CN
    I have done two things:
    first, add exportCharacterEncoding init param for UIXServlet
    <init-param>
    <param-name>exportCharacterEncoding</param-name>
    <param-value>GBK</param-value>
    </init-param>
    second,Set locale for the BIThinSession instance in jsp file.
    oracle.dss.addins.jspTags.BIThinSession bisession = (oracle.dss.addins.jspTags.BIThinSession) pageContext.findAttribute("SalesBIThinSession");
    bisession.setLocale(Locale.getDefault());
    Is this a bug that bibeans can not locate resource bundles correctly base on the user's specified environment? Is there an invisible environment variable base on which the bibean tags judge to select a resource file and result in this phenomenon?

    The intersting point here is that the application works using an Oracle stack but does not work using an IBM stack. I will contact our development engineers for more information and will post another response when I have a reply.
    Business Intelligence Beans Product Management Team
    Oracle Corporation

  • Security issue with web server plug-in with Weblogic server

    Hi,
    I have a setup where I have an Microsoft IIS setup as the front facing web server and have the WLS IIS plug-in installed on it. At the backend, is two WLS11g managed servers in a cluster.
    I have a JAX-WS client running on HPUX hitting the web service via IIS but I observe a very strange thing. When the service request is rather small, it could pass through IIS and the managed servers could pick up the call and reply correctly. However, when I have a bigger request call (larger payload), it will error out, citing "Unsupported Content-Type: text/html Supported ones are: [text/xml]".
    I have also attempt to put in a TCP/IP Monitor between the client and IIS and it appears that regardless if the call gets through, it seems to consistently got hit with a HTTP error 401.2, follow by a 401.1, and then, the WSDL came back. I am pretty sure that the web services are not secured as I could get the WSDL without any authentication on the managed servers direct from my brower (it did pop the authentication window if I attempt to hit the web services via IIS)
    Anyone has any idea what is going on, the issue seems to be so contradicting...
    Thanks in advance.

    When you look at this link http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/8feeaa51-c634-4de3-bfdc-e922d195a45e.mspx?mfr=true
    You can check the authentication method that is configured for that node in the metabase.

  • EJB2.0 issue on weblogic server 8.1 sp4

    We are doing some ejb2.0 development on weblogic 8.1 sp4, and We have noticed some unusual and undesirable behavior with CMR.
    The following session bean code is used to define a Many-Many relationship between different entity beans in the same EJB using CMR.
    The method does the following:
    1. Gets the existing Collection of parents EJBs for the child EJB.
    2. Checks that the new parent EJB is not in the existing parents Collection
    3. Adds the new parent to the Collection and finally sets the parents Collections for the child EJB.
    public static void addChild(EntityHandle a_parent, EntityHandle a_child)
    throws TrackingException
    TrackedEntityLocal parent = null;
    TrackedEntityLocal child = null;
    parent = getEntity(a_parent);
    child = getEntity(a_child);
    Collection parents = child.getParents();
    if (!containsEJB(parents, parent)) // return true if parent already exists in collection parents.
    parents.add(parent);
    child.setParents(parents);
    In the problem scenario we are creating the child and its parent entities in the same transaction.
    We then define the raltionships by adding parents to the same child EJB on the client side within the same transaction (that created the EJBs) like this:
    addChild( parentOne, child);
    addChild( parentTwo, child);
    addChild( parentThree, child);
    I expect 3 records in the CMR EJB table entity_relationship but I end up with 6 records in table entity_relationship like this.
    parentOne,child
    parentOne,child
    parentTwo,child
    parentOne,child
    parentTwo,child
    parentThree,child
    What seems to be happening is that these EJB relationships are being duplicated in the EJB cache which means that when the container persists the relationships it breaks a unique constraint that is defined in Oracle.
    It seems that each time I call child.getParents() I get a copy of the bean's current parent relationships in the cache (which I then add one new parent to).
    Even though I set the parent Collection back into the bean (which i would expect to replace the existing Collection) at persist time the container seems to attempt to persist 3 distinct Collections.
    We only seem to get this problem if the parent entity itself has not yet been persisted.
    If the parent EJBs have already been created in table entity beforehand, we only get 3 relationships in table entity_relationship.
    parentOne,child
    parentTwo,child
    parentThree,child
    Anybody has any idea what's going on here? thanks a million.
    EJB schema below:
    both parent and child are from one table:entity.
    CREATE TABLE entity
    ( id INTEGER NOT NULL PRIMARY KEY,
    type_id INTEGER NOT NULL
    CONSTRAINT entity_FK
    REFERENCES entity_type(id),
    orig_comp_id INTEGER NOT NULL
    CONSTRAINT entity_FK2
    REFERENCES component(id)
    entity_relationship defines the relation between parent and child
    CREATE TABLE entity_relationship
    ( end1_id INTEGER NOT NULL
    CONSTRAINT entity_relationship_FK
    REFERENCES entity(id),
    end2_id INTEGER NOT NULL
    CONSTRAINT entity_relationship_FK2
    REFERENCES entity(id),
    type_id INTEGER DEFAULT(1)
    NOT NULL
    CONSTRAINT entity_relationship_FK3
    REFERENCES entity_rel_type(id),
    CONSTRAINT entity_relationship_PK PRIMARY KEY(end1_id,end2_id,type_id)
    EJB descriptors given below:
    ============================================ejb-jar.xml===============================================
    <entity>
    <ejb-name>TrackedEntityEJB</ejb-name>
    <local-home>uk.police.pnn.psni.eai.bcomp.tracking.entity.TrackedEntityHomeLocal</local-home>
    <local>uk.police.pnn.psni.eai.bcomp.tracking.entity.TrackedEntityLocal</local>
    <ejb-class>uk.police.pnn.psni.eai.bcomp.tracking.entity.TrackedEntityBean</ejb-class>
    <persistence-type>Container</persistence-type>
    <prim-key-class>java.lang.Integer</prim-key-class>
    <reentrant>False</reentrant>
    <cmp-version>2.x</cmp-version>
    <abstract-schema-name>entity</abstract-schema-name>
    <cmp-field>
    <field-name>id</field-name>
    </cmp-field>
    <primkey-field>id</primkey-field>
    <security-identity>
    <use-caller-identity/>
    </security-identity>
    </entity>
    <ejb-relation>
    <ejb-relation-name>entity-entity</ejb-relation-name>
    <ejb-relationship-role>
    <ejb-relationship-role-name>Entity-has-Parents</ejb-relationship-role-name>
    <multiplicity>Many</multiplicity>
    <relationship-role-source>
    <ejb-name>TrackedEntityEJB</ejb-name>
    </relationship-role-source>
    <cmr-field>
    <cmr-field-name>parents</cmr-field-name>
    <cmr-field-type>java.util.Collection</cmr-field-type>
    </cmr-field>
    </ejb-relationship-role>
    <ejb-relationship-role>
    <ejb-relationship-role-name>Entity-has-Children</ejb-relationship-role-name>
    <multiplicity>Many</multiplicity>
    <relationship-role-source>
    <ejb-name>TrackedEntityEJB</ejb-name>
    </relationship-role-source>
    <cmr-field>
    <cmr-field-name>children</cmr-field-name>
    <cmr-field-type>java.util.Collection</cmr-field-type>
    </cmr-field>
    </ejb-relationship-role>
    </ejb-relation>
    <container-transaction>
    <method>
    <ejb-name>TrackedEntityEJB</ejb-name>
    <method-name>*</method-name>
    </method>
    <trans-attribute>Supports</trans-attribute>
    </container-transaction>
    ==========================weblogic-ejb-jar.xml===================================================
    <weblogic-enterprise-bean>
    <ejb-name>TrackedEntityEJB</ejb-name>
    <entity-descriptor>
    <persistence>
    <persistence-use>
    <type-identifier>WebLogic_CMP_RDBMS</type-identifier>
    <type-version>6.0</type-version>
    <type-storage>META-INF/weblogic-cmp-rdbms-jar.xml</type-storage>
    </persistence-use>
    </persistence>
    </entity-descriptor>
    <enable-call-by-reference>true</enable-call-by-reference>
    <local-jndi-name>bcomp.tracking.entity.TrackedEntityHomeLocal</local-jndi-name>
    </weblogic-enterprise-bean>
    =============================weblogic-cmp-rdbms-jar.xml==========================================
    <weblogic-rdbms-relation>
    <relation-name>entity-entity</relation-name>
    <table-name>entity_relationship</table-name>
    <weblogic-relationship-role>
    <relationship-role-name>Entity-has-Parents</relationship-role-name>
    <relationship-role-map>
    <column-map>
    <foreign-key-column>end2_id</foreign-key-column>
    <key-column>id</key-column>
    </column-map>
    </relationship-role-map>
    </weblogic-relationship-role>
    <weblogic-relationship-role>
    <relationship-role-name>Entity-has-Children</relationship-role-name>
    <relationship-role-map>
    <column-map>
    <foreign-key-column>end1_id</foreign-key-column>
    <key-column>id</key-column>
    </column-map>
    </relationship-role-map>
    </weblogic-relationship-role>
    </weblogic-rdbms-relation>
    Edited by: user10185877 on 26-Aug-2008 02:06

    I am also wondering what the status of this problem is? It is preventing us from going to SP4.
    _Mike                                                                                                                                                                                                                                                                                           

  • TopLink issues using Weblogic Server 8.1 SP3 and MAC OS X with Oracle 9i

    Hi, I have successfully deployed my EJB (entity bean) on WLS 8.1 (the generic version) on Mac OS X. I also have installed Apple jdk 1.4.2 and everything seems to be ok. The server came up without any problem and can connect to my Oracle DB. I verify this from Weblogic console. However, when I try to access the bean (create/find), I got this AbstractMethodError exception. Can anyone help ?
    Thanks for any help/pointer you can provide.
    Regards,
    Message = Could not create network. javax.ejb.TransactionRolledbackLocalExceptio
    n: EJB Exception: : java.lang.AbstractMethodError: oracle.toplink.internal.ejb.c
    mp.wls.Wls81BeanManager.localCreate(Lweblogic/ejb20/internal/InvocationWrapper;L
    java/lang/reflect/Method;Ljava/lang/reflect/Method;[Ljava/lang/Object;)Ljavax/ej
    b/EJBLocalObject;
    at weblogic.ejb20.internal.EntityEJBLocalHome.create(EntityEJBLocalHome.
    java:170)
    at com.maranti.msm.server.objectRepository.Network_kmp5vn_LocalHomeImpl.
    create(Network_kmp5vn_LocalHomeImpl.java:151)
    at com.maranti.msm.server.topologyManagement.TopologyManagerEJB.createNe
    tworkBean(TopologyManagerEJB.java:157)
    at com.maranti.msm.server.topologyManagement.TopologyManagerEJB.getRootN
    etwork(TopologyManagerEJB.java:347)
    at com.maranti.msm.server.topologyManagement.TopologyManager_363sal_EOIm
    pl.getRootNetwork(TopologyManager_363sal_EOImpl.java:1558)
    at com.maranti.msm.server.topologyManagement.TopologyManager_363sal_EOIm
    pl_WLSkel.invoke(Unknown Source)
    at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
    at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerR
    ef.java:108)
    at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
    at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
    dSubject.java:363)
    at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
    144)
    at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.jav
    a:415)
    at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest
    .java:30)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:219)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:178)

    Any idea, anyone ?

Maybe you are looking for