cancel
Showing results for 
Search instead for 
Did you mean: 

J2EE Applications Access from Portal Applications

Former Member
0 Kudos

I have a problem to access EJB's on a different WAS instance.

For some reason the EJB's must run on the same machine. Can someone tell me how avoid this problem.

As recap: the SharingReference SAPJ2EE::sap.com/<ear-name> must be run on the same server.

If not you will get a error

Accepted Solutions (0)

Answers (1)

Answers (1)

former_member182372
Active Contributor
0 Kudos

Hello Edward,

Could you please specify your problem more detailed?

Best regards, Maksim Rashchynski.

Former Member
0 Kudos

Sure,

Thanx so far. The problem I'm facing the following.

I made a portal application. The portal application is using some EJB's that are running on a different WAS server.

Now I will use the logic that is made in the EJB's in my portal application. But for some reason this is not possible.

The same scenario is working with servlets and

The same scenatio is working in case the EJB's run on the same server as the portal application

Former Member
0 Kudos

Please can someone help me with this...

former_member182372
Active Contributor
0 Kudos

Hello Edward,

> But for some reason this is not possible.

What symptoms you have while calling EJB remotely (stacktraces, dumps etc.)?

Best regards, Maksim Rashchynski.

Former Member
0 Kudos

Thanx Maksim,

The problem must be found in the declaration.

When I use EJB's

I add the line below.

<property name="SharingReference" value="SAPJ2EE::sap.com/<aEnterpriseApplicationName>"/>

But for some reason I get an exception. Even before I do the a call to the EJB.

The stack trace looks like below

[EXCEPTION]

#1#java.rmi.RemoteException: Application sap.com/<aEnterpriseApplicationName> is not deployed.

at com.sap.engine.services.deploy.server.DeployServiceImpl.getApplicationInformation(DeployServiceImpl.java:5313)

at com.sap.portal.prt.sapj2ee.SAPJ2EEPortalRuntime.registerReferenceFromPortalToSAPJ2EE(SAPJ2EEPortalRuntime.java:389)

at com.sapportals.portal.prt.service.sapj2ee.Mediator.registerReferenceFromPortalToSAPJ2EE(Mediator.java:283)

at com.sapportals.portal.prt.core.broker.PortalApplicationItem.prepare(PortalApplicationItem.java:383)

at com.sapportals.portal.prt.core.broker.PortalApplicationItem._refresh(PortalApplicationItem.java:505)

at com.sapportals.portal.prt.core.broker.PortalApplicationItem.getCoreLoader(PortalApplicationItem.java:1334)

at com.sapportals.portal.prt.core.broker.PortalComponentItem.getClassLoader(PortalComponentItem.java:569)

at com.sapportals.portal.prt.core.broker.PortalComponentItemFacade.getClassLoader(PortalComponentItemFacade.java:102)

at com.sapportals.portal.prt.core.broker.PortalComponentItemFacade.getInstanceInternal(PortalComponentItemFacade.java:228)

at com.sapportals.portal.prt.core.broker.PortalComponentItemFacade.getComponentInstance(PortalComponentItemFacade.java:160)

at com.sapportals.portal.prt.core.broker.PortalComponentItem.getComponentInstance(PortalComponentItem.java:732)

at com.sapportals.portal.prt.component.PortalComponentContext.getComponent(PortalComponentContext.java:103)

at com.sapportals.portal.prt.component.PortalComponentContext.init(PortalComponentContext.java:242)

at com.sapportals.portal.prt.core.broker.PortalComponentContextItem.refresh(PortalComponentContextItem.java:267)

at com.sapportals.portal.prt.core.broker.PortalComponentContextItem.getContext(PortalComponentContextItem.java:312)

at com.sapportals.portal.prt.component.PortalComponentRequest.getComponentContext(PortalComponentRequest.java:385)

at com.sapportals.portal.prt.connection.PortalRequest.getRootContext(PortalRequest.java:435)

at com.sapportals.portal.prt.core.PortalRequestManager.runRequestCycle(PortalRequestManager.java:607)

at com.sapportals.portal.prt.connection.ServletConnection.handleRequest(ServletConnection.java:240)

at com.sapportals.portal.prt.dispatcher.Dispatcher$doService.run(Dispatcher.java:522)

at java.security.AccessController.doPrivileged(Native Method)

at com.sapportals.portal.prt.dispatcher.Dispatcher.service(Dispatcher.java:405)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at com.sap.engine.services.servlets_jsp.server.servlet.InvokerServlet.service(InvokerServlet.java:156)

at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:390)

at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:264)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:347)

at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:325)

at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:887)

at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:241)

at com.sap.engine.services.httpserver.server.Client.handle(Client.java:92)

at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:148)

at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)

at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)

at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)

at java.security.AccessController.doPrivileged(Native Method)

at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:95)

at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:160)

Message was edited by: Edward van der Kust

Former Member
0 Kudos

Hi Edward,

I am providing a different solution to your problem.

If you are accessing stateless session beans then you can create web service of those beans and deploy in WAS.

Then you can easily call those web service in your portal application.

Hope this will solve your problem.

Thanks,

Hari