Apache Struts Bridge for JSR-168 Portlet
Hello,
I am trying to call a struts application from a JSR-168 Portlet.
But I am not getting this class "oracle.webdb.wsrp.server.PortletApplicationImpl"
Which is required for this.
Can anyone, tell me, where to find this class.
Thanks
Sam
Message was edited by:
samplified
I was able to find that class by downloading the Oracle Portlet Container 10.1.2.0.2 and following the instructions for extracting it into my OC4J. When you do that it will give you a file called ${OC4J_HOME}/shared-lib/oracle.wsrp/1.0/wsrp-container.jar. That jar file contains the class you need.
Oracle Portlet Container 10.1.2.0.2: http://download.oracle.com/otndocs/tech/ias/portal/files/portlet-container.zip
PDK Page: http://www.oracle.com/technology/products/ias/portal/pdk.html
Similar Messages
-
Inter Portlet Communication for JSR 168 Portlets
Hi,
I want to invoke one JSR168 Portlet from another and also pass parameters between the two.I did the same using Events for Oracle Portlets.
I would like to know how to do the same when I build JSR 168 Portlets.
Also Pls let me know where I can get documentation which describes all the possible options that I can try out on JSR168 Portlets
Regards
YashHello Yash,
The current version of the specifications does not support Parameter and Events that allow you to create portlet 2 portlet communication using OracleAS Portal framework.
If the reusability of the parameter is not a major requirement of your application you can simply use URL parameters and this will authorize you implement that.
Regards
Tugdual Grall -
Update portlet.xml(for JSR 168 portlets) at runtime
Is there a way to update the portlet.xml dynamically? That is, add an instance of the portlet using <portlet> tag at runtime to the portlet.xml. Does the portlet container need to be bounced back so that the updates are picked up?
Got to know that that this is very much a portal-dependent functionality. Does Oracle Portal support this functionality?
Thanks,
ParulHi Parul,
I am not sure that you will be able to add portlets dynamically .. since, even if you do, you will still need to refresh the provider on the portal.
thanks,
Harsha
p.s.: What is your use-case for such an requirement? -
Weblogic Portal 10.3.5 - JSR-168 Portlet resize at runtime by the users
One of the requirement I'm trying to develop in WLP 10.3.5 for JSR-168 Portlet is to give the end user the flexibilty to resize (Just like we can do in Iframe in IE) it in runtime. Is it possible to do this ?
Any helpful link / pointers are welcome.
Edited by: hari_wc on Mar 25, 2013 8:46 AMHi,
Could someone pls explain which cache is used to cache portlet content and in which form the content is cached? -
USING APACHE STURUTS BRIDGE WITH ORACLE PORTAL FOR STRUTS - JSR 168 PORTLET
I am trying to develop a JSR - 168 compliant portlet which uses struts framework.I am using APACHE STRUTS BRIDGE to run the application in my ORACLE 10.1.4 Portal server.While doing the configuration accoring to the documentation given in URL http://www.ja-sig.org/wiki/display/PLT/Struts+Bridge
(apache struts bridge), i was asked to add an <init-param> entery in the portlet.xml file to get the ServletContext.So i need to know where is the ServletContextProvider implementation class which implements ServletContextProvider available in Oracle AS so that i can use that to get the ServletContext and use it furthur.
Thanks
Deepakyou could write your own implementation class for the ServletContextProvider interface and fill in the portlet.xml with the class you class
It could be written as follows:
package Edmunds.com.portal.bridges;
import javax.portlet.GenericPortlet;
import javax.portlet.PortletRequest;
import javax.portlet.PortletResponse;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletRequestWrapper;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpServletResponseWrapper;
/* note that PortletApplicationImpl is oracle version of portletContextImpl */
import oracle.webdb.wsrp.server.PortletApplicationImpl;
import org.apache.portals.bridges.common.ServletContextProvider;
* PortalServletContextProvider supplies access to the Servlet context of Oralce Portal Portlet.
public class PortalServletContextProvider implements ServletContextProvider {
public ServletContext getServletContext(GenericPortlet portlet)
return ((PortletApplicationImpl) portlet.getPortletContext()).getServletContext();
public HttpServletRequest getHttpServletRequest(GenericPortlet portlet, PortletRequest request)
return (HttpServletRequest) ((HttpServletRequestWrapper) request).getRequest();
public HttpServletResponse getHttpServletResponse(GenericPortlet portlet, PortletResponse response) {
return (HttpServletResponse) ((HttpServletResponseWrapper) response).getResponse();
} -
ServletContextProvider Implementation class for Apache Struts Bridge in OAS
Hello,
I am using Apache Struts Bridge to create JSR-168 portlets, based on Struts.
But I am stuck in one point... i.e. maybe oracle doesnot provide a implementaion for the ServletContextProvider interface, which is required by the struts bridge, inorder to get the servlet context.
Other Portal Servers like, Pluto, etc... provide a implementation class for this.
I have heard that, if a Implementation class can be written for this, then the problem will be solved.
Have any one faced any such situation? Have any one implemented the ServletContextProvider interface for OC4J....
Any Help would be highly appreciated.
Thanks
Sam...I was able to find that class by downloading the Oracle Portlet Container 10.1.2.0.2 and following the instructions for extracting it into my OC4J. When you do that it will give you a file called ${OC4J_HOME}/shared-lib/oracle.wsrp/1.0/wsrp-container.jar. That jar file contains the class you need.
Oracle Portlet Container 10.1.2.0.2: http://download.oracle.com/otndocs/tech/ias/portal/files/portlet-container.zip
PDK Page: http://www.oracle.com/technology/products/ias/portal/pdk.html -
Oracle Portal WSRP messing things up for Tapestry JSR-168 portlet?
I've been trying to consume a Tapestry JSR-168 portlet in Oracle Portal 10.1.4. However a very simple tapestry page is (already) failing. This page displays some boilerplate text and a form component including one text input item. Upon display the following stacktrace is shown:
06/03/03 14:42:58 webmodule: [id=3230371113264,1] EXCEPTION THROWN: Uncaught exception
org.apache.hivemind.ApplicationRuntimeException: Invalid URL "wsrp_rewrite?wsrp-urlType=blockingAction&wsrp-mode=wsrp%3Aview&wsrp-windowState=wsrp%3Anormal&wsrp-secureURL=false/wsrp_rewrite" [context:/WEB-INF/Home.page, line 5, column 59]
at org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:380)
at org.apache.tapestry.portlet.PortletRendererImpl.renderPage(PortletRendererImpl.java:70)
at $PortletRenderer_109c058b59f.renderPage($PortletRenderer_109c058b59f.java)
at $PortletRenderer_109c058b59e.renderPage($PortletRenderer_109c058b59e.java)
at org.apache.tapestry.portlet.PortletHomeService.service(PortletHomeService.java:80)
at $IEngineService_109c058b58a.service($IEngineService_109c058b58a.java)
at org.apache.tapestry.services.impl.EngineServiceInnerProxy.service(EngineServiceInnerProxy.java:77)
at org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:66)
at org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:248)
at org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:60)
at $WebRequestServicer_109c058b559.service($WebRequestServicer_109c058b559.java)
at $WebRequestServicer_109c058b558.service($WebRequestServicer_109c058b558.java)
at $WebRequestServicer_109c058b557.service($WebRequestServicer_109c058b557.java)
at $WebRequestServicer_109c058b556.service($WebRequestServicer_109c058b556.java)
at org.apache.tapestry.portlet.RenderRequestServicerToWebRequestServicerBridge.service(RenderRequestServicerToWebRequestServicerBridge.java:49)
at $RenderRequestServicer_109c058b551.service($RenderRequestServicer_109c058b551.java)
at $RenderRequestServicer_109c058b550.service($RenderRequestServicer_109c058b550.java)
at $RenderRequestServicer_109c058b54b.service($RenderRequestServicer_109c058b54b.java)
at $RenderRequestServicer_109c058b54a.service($RenderRequestServicer_109c058b54a.java)
at org.apache.tapestry.portlet.ApplicationPortlet.render(ApplicationPortlet.java:161)
at oracle.webdb.wsrp.server.Server.getMarkup(Unknown Source)
at oracle.webdb.wsrp.WSRP_v1_Markup_PortType_Tie.invoke_getMarkup(WSRP_v1_Markup_PortType_Tie.java:98)
at oracle.webdb.wsrp.WSRP_v1_Markup_PortType_Tie.processingHook(WSRP_v1_Markup_PortType_Tie.java:495)
at com.sun.xml.rpc.server.StreamingHandler.handle(StreamingHandler.java:230)
at com.sun.xml.rpc.server.http.ea.JAXRPCServletDelegate.doPost(JAXRPCServletDelegate.java:153)
at com.sun.xml.rpc.server.http.JAXRPCServlet.doPost(JAXRPCServlet.java:69)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
at oracle.webdb.wsrp.server.ContextFilter.doFilter(Unknown Source)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:663)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:285)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:126)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
at java.lang.Thread.run(Thread.java:534)
Caused by: oracle.webdb.wsrp.server.ContainerIllegalArgumentException: Invalid URL "wsrp_rewrite?wsrp-urlType=blockingAction&wsrp-mode=wsrp%3Aview&wsrp-windowState=wsrp%3Anormal&wsrp-secureURL=false/wsrp_rewrite"
at oracle.webdb.wsrp.server.PortletResponseImpl.encodeURL(Unknown Source)
at oracle.webdb.wsrp.server.RenderResponseImpl.encodeURL(Unknown Source)
at org.apache.tapestry.portlet.PortletWebResponse.encodeURL(PortletWebResponse.java:60)
at $WebResponse_109c058b636.encodeURL($WebResponse_109c058b636.java)
at $WebResponse_109c058b51e.encodeURL($WebResponse_109c058b51e.java)
at org.apache.tapestry.engine.RequestCycle.encodeURL(RequestCycle.java:207)
at $IRequestCycle_109c058b63f.encodeURL($IRequestCycle_109c058b63f.java)
at $IRequestCycle_109c058b53a.encodeURL($IRequestCycle_109c058b53a.java)
at org.apache.tapestry.portlet.PortletLink.getURL(PortletLink.java:68)
at org.apache.tapestry.portlet.PortletLink.getURL(PortletLink.java:126)
at org.apache.tapestry.form.FormSupportImpl.render(FormSupportImpl.java:490)
at org.apache.tapestry.form.Form.renderComponent(Form.java:250)
at org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617)
at org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:92)
at org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617)
at org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:275)
at org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:366)
... 36 more
06/03/03 14:42:58 webmodule: [id=3230371113264,1] WARNING: Unable to process client request: Invalid URL "wsrp_rewrite?wsrp-urlType=blockingAction&wsrp-mode=wsrp%3Aview&wsrp-windowState=wsrp%3Anormal&wsrp-secureURL=false/wsrp_rewrite"
org.apache.hivemind.ApplicationRuntimeException: Invalid URL "wsrp_rewrite?wsrp-urlType=blockingAction&wsrp-mode=wsrp%3Aview&wsrp-windowState=wsrp%3Anormal&wsrp-secureURL=false/wsrp_rewrite" [context:/WEB-INF/Home.page, line 5, column 59]
at org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:380)
at org.apache.tapestry.portlet.PortletRendererImpl.renderPage(PortletRendererImpl.java:70)
at $PortletRenderer_109c058b59f.renderPage($PortletRenderer_109c058b59f.java)
at $PortletRenderer_109c058b59e.renderPage($PortletRenderer_109c058b59e.java)
at org.apache.tapestry.portlet.PortletHomeService.service(PortletHomeService.java:80)
at $IEngineService_109c058b58a.service($IEngineService_109c058b58a.java)
at org.apache.tapestry.services.impl.EngineServiceInnerProxy.service(EngineServiceInnerProxy.java:77)
at org.apache.tapestry.services.impl.EngineServiceOuterProxy.service(EngineServiceOuterProxy.java:66)
at org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:248)
at org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:60)
at $WebRequestServicer_109c058b559.service($WebRequestServicer_109c058b559.java)
at $WebRequestServicer_109c058b558.service($WebRequestServicer_109c058b558.java)
at $WebRequestServicer_109c058b557.service($WebRequestServicer_109c058b557.java)
at $WebRequestServicer_109c058b556.service($WebRequestServicer_109c058b556.java)
at org.apache.tapestry.portlet.RenderRequestServicerToWebRequestServicerBridge.service(RenderRequestServicerToWebRequestServicerBridge.java:49)
at $RenderRequestServicer_109c058b551.service($RenderRequestServicer_109c058b551.java)
at $RenderRequestServicer_109c058b550.service($RenderRequestServicer_109c058b550.java)
at $RenderRequestServicer_109c058b54b.service($RenderRequestServicer_109c058b54b.java)
at $RenderRequestServicer_109c058b54a.service($RenderRequestServicer_109c058b54a.java)
at org.apache.tapestry.portlet.ApplicationPortlet.render(ApplicationPortlet.java:161)
at oracle.webdb.wsrp.server.Server.getMarkup(Unknown Source)
at oracle.webdb.wsrp.WSRP_v1_Markup_PortType_Tie.invoke_getMarkup(WSRP_v1_Markup_PortType_Tie.java:98)
at oracle.webdb.wsrp.WSRP_v1_Markup_PortType_Tie.processingHook(WSRP_v1_Markup_PortType_Tie.java:495)
at com.sun.xml.rpc.server.StreamingHandler.handle(StreamingHandler.java:230)
at com.sun.xml.rpc.server.http.ea.JAXRPCServletDelegate.doPost(JAXRPCServletDelegate.java:153)
at com.sun.xml.rpc.server.http.JAXRPCServlet.doPost(JAXRPCServlet.java:69)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
at oracle.webdb.wsrp.server.ContextFilter.doFilter(Unknown Source)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:663)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:830)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:285)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:126)
at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.2)].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186)
at java.lang.Thread.run(Thread.java:534)
Caused by: oracle.webdb.wsrp.server.ContainerIllegalArgumentException: Invalid URL "wsrp_rewrite?wsrp-urlType=blockingAction&wsrp-mode=wsrp%3Aview&wsrp-windowState=wsrp%3Anormal&wsrp-secureURL=false/wsrp_rewrite"
at oracle.webdb.wsrp.server.PortletResponseImpl.encodeURL(Unknown Source)
at oracle.webdb.wsrp.server.RenderResponseImpl.encodeURL(Unknown Source)
at org.apache.tapestry.portlet.PortletWebResponse.encodeURL(PortletWebResponse.java:60)
at $WebResponse_109c058b636.encodeURL($WebResponse_109c058b636.java)
at $WebResponse_109c058b51e.encodeURL($WebResponse_109c058b51e.java)
at org.apache.tapestry.engine.RequestCycle.encodeURL(RequestCycle.java:207)
at $IRequestCycle_109c058b63f.encodeURL($IRequestCycle_109c058b63f.java)
at $IRequestCycle_109c058b53a.encodeURL($IRequestCycle_109c058b53a.java)
at org.apache.tapestry.portlet.PortletLink.getURL(PortletLink.java:68)
at org.apache.tapestry.portlet.PortletLink.getURL(PortletLink.java:126)
at org.apache.tapestry.form.FormSupportImpl.render(FormSupportImpl.java:490)
at org.apache.tapestry.form.Form.renderComponent(Form.java:250)
at org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617)
at org.apache.tapestry.BaseComponent.renderComponent(BaseComponent.java:92)
at org.apache.tapestry.AbstractComponent.render(AbstractComponent.java:617)
at org.apache.tapestry.AbstractPage.renderPage(AbstractPage.java:275)
at org.apache.tapestry.engine.RequestCycle.renderPage(RequestCycle.java:366)
... 36 moreAny of you got any clue whether this is an issue of Tapestry, or of Oracle Portal. I'm guessing it is Oracle Portal messing things up, as it is Oracle which gets mentioned in the stacktrace as cause.
Thanks.My mistake! The error was a result of a badly formatted portal.xml
-
Deploying JSR-168 portlets error in Weblogic Portal 9.2MP2
Hello,
We're using WebLogic 9.2MP2 and ALBPM 5.7 SP2 enterprise server standalone. We want display in our portal the In-Box to the user as a JSR-168 portlet.
We are following the steps in the following guide:
http://edocs.bea.com/albsi/docs57/adminguide/jsr-168/ad_jsr168_wl92_deployingalbpmjsr168portlets.htm
but when we try to add a new remote producer using the WebLogic Portal Administrator Console we get this error ( in the "Find producer" step):
com.bea.jsptools.portal.helpers.wsrp.AddProducerControlException: java.rmi.RemoteException: Remote method invocation failed: weblogic.xml.crypto.wss.WSSecurityException: Unable to add security token for identity.; nested exception is:
weblogic.xml.crypto.wss.WSSecurityException: Unable to add security token for identity
at com.bea.jsptools.portal.helpers.wsrp.AddProducerHelper.getProducerForWsdl(AddProducerHelper.java:712)
at com.bea.jsptools.portal.helpers.wsrp.AddProducerHelper.access$100(AddProducerHelper.java:61)
at com.bea.jsptools.portal.helpers.wsrp.AddProducerHelper$FindProducers.producerWsdl(AddProducerHelper.java:249)
at com.bea.jsptools.portal.helpers.wsrp.AddProducerHelper$FindProducers.run(AddProducerHelper.java:235)
at portalTools.definitions.portletProducers.wizard.AddProducerWizardController.runAction(AddProducerWizardController.java:566)
at portalTools.definitions.portletProducers.wizard.AddProducerWizardController.doIfValid(AddProducerWizardController.java:542)
at portalTools.definitions.portletProducers.wizard.AddProducerWizardController.selectProducerAction(AddProducerWizardController.java:172)
at sun.reflect.GeneratedMethodAccessor956.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:615)
at org.apache.beehive.netui.pageflow.FlowController.invokeActionMethod(FlowController.java:878)
at org.apache.beehive.netui.pageflow.FlowController.getActionMethodForward(FlowController.java:808)
at org.apache.beehive.netui.pageflow.FlowController.internalExecute(FlowController.java:477)
at org.apache.beehive.netui.pageflow.PageFlowController.internalExecute(PageFlowController.java:305)
at org.apache.beehive.netui.pageflow.FlowController.execute(FlowController.java:335)
at org.apache.beehive.netui.pageflow.internal.FlowControllerAction.execute(FlowControllerAction.java:51)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201(PageFlowRequestProcessor.java:95)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunner.execute(PageFlowRequestProcessor.java:2042)
at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionInterceptors.wrapAction(ActionInterceptors.java:90)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processActionPerform(PageFlowRequestProcessor.java:2114)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInternal(PageFlowRequestProcessor.java:554)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(PageFlowRequestProcessor.java:851)
at org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(AutoRegisterActionServlet.java:630)
at org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageFlowActionServlet.java:157)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at org.apache.beehive.netui.pageflow.PageFlowUtils.strutsLookup(PageFlowUtils.java:1169)
at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.executeAction(ScopedContentCommonSupport.java:688)
at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.processActionInternal(ScopedContentCommonSupport.java:144)
at com.bea.portlet.adapter.scopedcontent.PageFlowStubImpl.processAction(PageFlowStubImpl.java:107)
at com.bea.portlet.adapter.NetuiActionHandler.raiseScopedAction(NetuiActionHandler.java:99)
at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:180)
at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedAction(NetuiContent.java:168)
at com.bea.netuix.servlets.controls.content.NetuiContent.handlePostbackData(NetuiContent.java:222)
at com.bea.netuix.nf.ControlLifecycle$2.visit(ControlLifecycle.java:178)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:351)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.java:361)
at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:128)
at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361)
at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:339)
at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:330)
at com.bea.netuix.nf.Lifecycle.runInbound(Lifecycle.java:162)
at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:137)
at com.bea.netuix.servlets.manager.UIServlet.runLifecycle(UIServlet.java:370)
at com.bea.netuix.servlets.manager.UIServlet.doPost(UIServlet.java:229)
at com.bea.netuix.servlets.manager.UIServlet.service(UIServlet.java:183)
at com.bea.netuix.servlets.manager.SingleFileServlet.service(SingleFileServlet.java:221)
at com.bea.netuix.servlets.manager.PortalServlet.service(PortalServlet.java:600)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:223)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at com.bea.jsptools.servlet.PagedResultServiceFilter.doFilter(PagedResultServiceFilter.java:82)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at com.bea.p13n.servlets.PortalServletFilter.doFilter(PortalServletFilter.java:251)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3243)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2003)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:1909)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1359)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
Caused by: java.rmi.RemoteException: Remote method invocation failed: weblogic.xml.crypto.wss.WSSecurityException: Unable to add security token for identity.; nested exception is:
weblogic.xml.crypto.wss.WSSecurityException: Unable to add security token for identity
at com.bea.wsrp.proxy.WseeProxy.dispatch(WseeProxy.java:274)
at com.bea.wsrp.proxy.WseeProxy.sendMessage(WseeProxy.java:131)
at com.bea.wsrp.proxy.WseeProxy.dispatch(WseeProxy.java:103)
at com.bea.wsrp.proxy.ProxyBase.invoke(ProxyBase.java:438)
at $Proxy83.getServiceDescription(Unknown Source)
at com.bea.wsrp.client.ProducerAgentImpl.getServiceDescription(ProducerAgentImpl.java:93)
at com.bea.wsrp.client.ProducerAgentImpl.getServiceDescription(ProducerAgentImpl.java:55)
at com.bea.jsptools.portal.helpers.wsrp.ProducerRegistryControlImpl.getServiceDescription(ProducerRegistryControlImpl.java:205)
at com.bea.jsptools.portal.helpers.wsrp.ProducerRegistryControlBean.getServiceDescription(ProducerRegistryControlBean.java:133)
at com.bea.jsptools.portal.helpers.wsrp.AddProducerHelper.getProducerForWsdl(AddProducerHelper.java:704)
... 80 more
Caused by: weblogic.xml.crypto.wss.WSSecurityException: Unable to add security token for identity
at weblogic.wsee.security.wss.SecurityPolicyDriver.processIdentity(SecurityPolicyDriver.java:175)
at weblogic.wsee.security.wss.SecurityPolicyDriver.processOutbound(SecurityPolicyDriver.java:73)
at weblogic.wsee.security.WssClientHandler.processOutbound(WssClientHandler.java:69)
at weblogic.wsee.security.WssClientHandler.processRequest(WssClientHandler.java:53)
at weblogic.wsee.security.WssHandler.handleRequest(WssHandler.java:72)
at weblogic.wsee.handler.HandlerIterator.handleRequest(HandlerIterator.java:127)
at weblogic.wsee.handler.HandlerIterator.handleRequest(HandlerIterator.java:100)
at weblogic.wsee.ws.dispatch.client.ClientDispatcher.dispatch(ClientDispatcher.java:101)
at com.bea.wsrp.proxy.WseeProxy.dispatch(WseeProxy.java:236)
... 89 more
and this is the content of the wsdl
<s0:definitions name="" targetNamespace="urn:oasis:names:tc:wsrp:v1:wsdl">
<s0:import location="http://esmadaix01:7001/fportlets/producer/wsrp-1.0/markup?WSDL/wlp_wsrp_v1_bindings.wsdl" namespace="urn:bea:wsrp:ext:v1:bind"/>
<s0:import location="http://esmadaix01:7001/fportlets/producer/wsrp-1.0/markup?WSDL/wsrp_v1_bindings.wsdl" namespace="urn:oasis:names:tc:wsrp:v1:bind"/>
<s1:Policy s2:Id="ProducerDefaultPolicy">
<s1:All>
<wssp:Identity>
<wssp:SupportedTokens>
<wssp:SecurityToken TokenType="http://docs.oasis-open.org/wss/2004/01/oasis-2004-01-saml-token-profile-1.0#SAMLAssertionID">
<wssp:Claims>
<wssp:ConfirmationMethod>sender-vouches</wssp:ConfirmationMethod>
</wssp:Claims>
</wssp:SecurityToken>
</wssp:SupportedTokens>
</wssp:Identity>
</s1:All>
</s1:Policy>
<wsp:UsingPolicy s0:Required="true"/>
<s0:service name="WSRPService">
<s0:port binding="s3:WSRP_v1_Markup_Binding_SOAP" name="WSRPBaseService">
<s4:address location="http://esmadaix01:7001/fportlets/producer/wsrp-1.0/markup"/>
</s0:port>
<s0:port binding="s3:WSRP_v1_ServiceDescription_Binding_SOAP" name="WSRPServiceDescriptionService">
<s4:address location="http://esmadaix01:7001/fportlets/producer/wsrp-1.0/serviceDescription"/>
</s0:port>
<s0:port binding="s3:WSRP_v1_Registration_Binding_SOAP" name="WSRPRegistrationService">
<s4:address location="http://esmadaix01:7001/fportlets/producer/wsrp-1.0/registration"/>
</s0:port>
<s0:port binding="s3:WSRP_v1_PortletManagement_Binding_SOAP" name="WSRPPortletManagementService">
<s4:address location="http://esmadaix01:7001/fportlets/producer/wsrp-1.0/portletManagement"/>
</s0:port>
<s0:port binding="s5:WLP_WSRP_v1_Markup_Ext_Binding_SOAP" name="WLP_WSRP_Ext_Service">
<s4:address location="http://esmadaix01:7001/fportlets/producer/wsrp-wlp-ext-1.0/markup"/>
</s0:port>
</s0:service>
</s0:definitions>
I don't know what to do..., please help!!
Thanks in advance for your help.I also have a similar problem with ALSB, I'm trying to call a service which is signed with usernameToken, i created a service account, and passed the remote username and password, but unfortunatily i get the follownig error:
<Dec 24, 2007 10:49:52 AM GST> <Info> <Server> <BEA-002605> <Adding address: 83.
110.15.81 to licensed client list>
<Dec 24, 2007 10:50:00 AM GST> <Warning> <netuix> <BEA-423430> <The portal <dire
ctive.page> element has been deprecated. You can set the page encoding on the <n
etuix:desktop> element.>
<Dec 24, 2007 10:50:02 AM GST> <Warning> <netuix> <BEA-423420> <Redirect is exec
uted in begin or refresh action. Redirect url is jsp/login/index.jsp.>
<Dec 24, 2007 10:50:07 AM GST> <Info> <JMX> <BEA-149505> <The administration ser
ver was unable to establish JMX Connectivity with the Server1 at the JMX Service
URL of <none>.>
<Dec 24, 2007 10:50:09 AM GST> <Notice> <Stdout> <000000> <nl.ikarus.nxt.priv.im
ageio.icoreader.lib.ICOReader loaded, version: 0.06.064 build: 691>
<Dec 24, 2007 10:50:24 AM GST> <Info> <Health> <BEA-310002> <54% of the total me
mory in the server is free>
<Dec 24, 2007 10:50:25 AM GST> <Warning> <netuix> <BEA-423430> <The portal <dire
ctive.page> element has been deprecated. You can set the page encoding on the <n
etuix:desktop> element.>
<Dec 24, 2007 10:50:40 AM GST> <Info> <ALSB Security> <BEA-387027> <Message-leve
l access control policy grants access to proxy "Fadia/ADTA/PSMine", operation "S
endSMS", message-id: 7380087946135603967-36ae4590.1170ae9bb75.-7ff3, subject: Su
bject: 3
Principal = class weblogic.security.principal.WLSUserImpl("weblogic")
Principal = class weblogic.security.principal.WLSGroupImpl("Administrato
rs")
Principal = class weblogic.security.principal.WLSGroupImpl("IntegrationA
dministrators")
.>
<Dec 24, 2007 10:50:40 AM GST> <Error> <ALSB Security> <BEA-387024> <An error oc
urred during web service security outbound request processing [error-code: Fault
, message-id: 7380087946135603967-36ae4590.1170ae9bb75.-7ff3, proxy: Fadia/ADTA/
PSMine, target: Fadia/ADTA/BSsmsMINE, operation: SendSMS]
--- Error message:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soa
penv:Header/><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><
faultstring>Unable to add security token for identity</faultstring></soapenv:Fau
lt></soapenv:Body></soapenv:Envelope>
weblogic.xml.crypto.wss.WSSecurityException: Unable to add security token for id
entity
at weblogic.wsee.security.wss.SecurityPolicyDriver.processIdentity(Secur
ityPolicyDriver.java:175)
at weblogic.wsee.security.wss.SecurityPolicyDriver.processOutbound(Secur
ityPolicyDriver.java:73)
at weblogic.wsee.security.WssClientHandler.processOutbound(WssClientHand
ler.java:69)
at weblogic.wsee.security.WssClientHandler.processRequest(WssClientHandl
er.java:53)
at weblogic.wsee.security.WssHandler.handleRequest(WssHandler.java:72)
at com.bea.wli.sb.security.wss.WssOutboundHandler$1.run(WssOutboundHandl
er.java:140)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
dSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
147)
at com.bea.wli.sb.security.wss.WssOutboundHandler.processRequest(WssOutb
oundHandler.java:138)
at com.bea.wli.sb.security.wss.WssHandlerImpl.doOutboundRequest(WssHandl
erImpl.java:901)
at com.bea.wli.sb.context.BindingLayerImpl.createTransportSender(Binding
LayerImpl.java:487)
at com.bea.wli.sb.pipeline.PipelineContextImpl.doDispatch(PipelineContex
tImpl.java:501)
at com.bea.wli.sb.pipeline.PipelineContextImpl.dispatch(PipelineContextI
mpl.java:488)
at stages.routing.runtime.RouteRuntimeStep.processMessage(RouteRuntimeSt
ep.java:127)
at com.bea.wli.sb.stages.StageMetadataImpl$WrapperRuntimeStep.processMes
sage(StageMetadataImpl.java:319)
at com.bea.wli.sb.pipeline.RouteNode.doRequest(RouteNode.java:108)
at com.bea.wli.sb.pipeline.Node.processMessage(Node.java:68)
at com.bea.wli.sb.pipeline.PipelineContextImpl.execute(PipelineContextIm
pl.java:834)
at com.bea.wli.sb.pipeline.Router.processMessage(Router.java:194)
at com.bea.wli.sb.pipeline.MessageProcessor.processRequest(MessageProces
sor.java:75)
at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:669)
at com.bea.wli.sb.pipeline.RouterManager$1.run(RouterManager.java:668)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
dSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
147)
at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.ja
va:666)
at com.bea.wli.sb.test.service.ServiceMessageSender.send0(ServiceMessage
Sender.java:265)
at com.bea.wli.sb.test.service.ServiceMessageSender.access$000(ServiceMe
ssageSender.java:86)
at com.bea.wli.sb.test.service.ServiceMessageSender$1.run(ServiceMessage
Sender.java:124)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
dSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
147)
at com.bea.wli.sb.test.service.ServiceMessageSender.send(ServiceMessageS
ender.java:127)
at com.bea.wli.sb.test.service.ServiceProcessor.invoke(ServiceProcessor.
java:404)
at com.bea.wli.sb.test.TestServiceImpl.invoke(TestServiceImpl.java:163)
at com.bea.wli.sb.test.client.ejb.TestServiceEJBBean.invoke(TestServiceE
JBBean.java:138)
at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl.invoke(TestS
ervice_sqr59p_EOImpl.java:427)
at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl_WLSkel.invok
e(Unknown Source)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:17
4)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef
.java:335)
at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef
.java:252)
at com.bea.wli.sb.test.client.ejb.TestService_sqr59p_EOImpl_921_WLStub.i
nvoke(Unknown Source)
at com.bea.wli.sb.console.test.TestServiceClient.invoke(TestServiceClien
t.java:178)
at com.bea.wli.sb.console.test.actions.DefaultRequestAction.invoke(Defau
ltRequestAction.java:117)
at com.bea.wli.sb.console.test.actions.DefaultRequestAction.execute(Defa
ultRequestAction.java:70)
at org.apache.struts.action.RequestProcessor.processActionPerform(Reques
tProcessor.java:419)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.access$201
(PageFlowRequestProcessor.java:95)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor$ActionRunn
er.execute(PageFlowRequestProcessor.java:2042)
at org.apache.beehive.netui.pageflow.interceptor.action.internal.ActionI
nterceptors.wrapAction(ActionInterceptors.java:90)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processAct
ionPerform(PageFlowRequestProcessor.java:2114)
at com.bea.wli.common.base.SBConsoleRequestProcessor.processActionPerfor
m(SBConsoleRequestProcessor.java:78)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.ja
va:224)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.processInt
ernal(PageFlowRequestProcessor.java:554)
at org.apache.beehive.netui.pageflow.PageFlowRequestProcessor.process(Pa
geFlowRequestProcessor.java:851)
at org.apache.beehive.netui.pageflow.AutoRegisterActionServlet.process(A
utoRegisterActionServlet.java:630)
at org.apache.beehive.netui.pageflow.PageFlowActionServlet.process(PageF
lowActionServlet.java:157)
at com.bea.console.internal.ConsoleActionServlet.process(ConsoleActionSe
rvlet.java:241)
at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
at com.bea.console.internal.ConsoleActionServlet.doGet(ConsoleActionServ
let.java:130)
at com.bea.wli.common.base.SBConsoleActionServlet.doGet(SBConsoleActionS
ervlet.java:58)
at org.apache.beehive.netui.pageflow.PageFlowUtils.strutsLookup(PageFlow
Utils.java:1169)
at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.exec
uteAction(ScopedContentCommonSupport.java:688)
at com.bea.portlet.adapter.scopedcontent.ScopedContentCommonSupport.proc
essActionInternal(ScopedContentCommonSupport.java:144)
at com.bea.portlet.adapter.scopedcontent.StrutsStubImpl.processAction(St
rutsStubImpl.java:76)
at com.bea.portlet.adapter.NetuiActionHandler.raiseScopedAction(NetuiAct
ionHandler.java:99)
at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedActi
on(NetuiContent.java:180)
at com.bea.netuix.servlets.controls.content.NetuiContent.raiseScopedActi
on(NetuiContent.java:168)
at com.bea.netuix.servlets.controls.content.NetuiContent.handlePostbackD
ata(NetuiContent.java:222)
at com.bea.netuix.nf.ControlLifecycle$2.visit(ControlLifecycle.java:178)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:351)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walkRecursive(ControlTreeWalker.j
ava:361)
at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:128)
at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361)
at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:339)
at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:330)
at com.bea.netuix.nf.Lifecycle.runInbound(Lifecycle.java:162)
at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:137)
at com.bea.netuix.servlets.manager.UIServlet.runLifecycle(UIServlet.java
:370)
at com.bea.netuix.servlets.manager.UIServlet.doPost(UIServlet.java:229)
at com.bea.netuix.servlets.manager.UIServlet.service(UIServlet.java:183)
at com.bea.netuix.servlets.manager.SingleFileServlet.service(SingleFileS
ervlet.java:221)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
at weblogic.servlet.AsyncInitServlet.service(AsyncInitServlet.java:124)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run
(StubSecurityHelper.java:223)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecuri
tyHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.jav
a:283)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.ja
va:42)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsF
ilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.ja
va:42)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationActio
n.run(WebAppServletContext.java:3243)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
dSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
121)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppS
ervletContext.java:2003)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletC
ontext.java:1909)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.j
ava:1359)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:181)
>
PLEASE PEASE HELP -
How to debug jsr 168 portlet in jdeveloper 10.1.3.4
Does anyone know how to locally debug a jsr 168 portlet in jdeveloper 10.1.3.4.
When I click on run it asked for a start page so I supply the view.jsp page.
The following error occurs on the page:
500 Internal Server Error
java.lang.NullPointerException at helloworld.html._view._jspService(_view.java:61) [helloworld/html/view.jsp] at com.orionserver[Oracle Containers for J2EE 10g (10.1.3.4.0) ].http.OrionHttpJspPage.service(OrionHttpJspPage.java:59) at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:462) at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:594) at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:518) at javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:713) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:370) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:871) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:453) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.serveOneRequest(HttpRequestHandler.java:221) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:122) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].server.http.HttpRequestHandler.run(HttpRequestHandler.java:111) at oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260) at oracle.oc4j.network.ServerSocketAcceptHandler.procClientSocket(ServerSocketAcceptHandler.java:234) at oracle.oc4j.network.ServerSocketAcceptHandler.access$700(ServerSocketAcceptHandler.java:29) at oracle.oc4j.network.ServerSocketAcceptHandler$AcceptHandlerHorse.run(ServerSocketAcceptHandler.java:879) at com.evermind[Oracle Containers for J2EE 10g (10.1.3.4.0) ].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298) at java.lang.Thread.run(Thread.java:595)
This is the first jsr 168 portlet I have tried.
Previously we have been created portlets using the Oracle PDK. Those portlets are easy to debug because the wizard creates an index.jsp page for the start page.
If anyone can provide some insight to my issue it would be greatly appreciated.
Thanks,Is this a portlet you built from scratch using the JSR 168 APIs, or is this a JSF Portlet using the JSF Portlet Bridge. If the latter, you can debug your JSF application. If the former, you can do remote debugging (let me know if you need information on this).
Hope this helps,
Peter -
Integration of JSR-168 portlet into Portal - Complete Guide
Hi there,
the CE 7.1 is described to be compatible with JSR-168 portlets.
Our Company has developed a JSR-168 portlet which comes as a WAR-File
which can be easily included in other application server and portals (WebShpere, Apache).
But integration in SAP Netweaver fails - I am missing a complete documentation
which describes me the necessary steps to integrate a JSR-168 portlet application
into the SAP Application Server and also how to integrate the GUI into a View of the NW portal.
PLEASE HELP ME!!!
Things I tried - Things I failed:
- Imported a EAR-File into Developement Studio and tried to add it to Server
-> Message "EAR Project: ... should have the SAP specific facet in order EAR to be built."
- Deployement via "Deployement Tool" of Netweaver 2.0 (2004s) worked
and I was able to start app but no integration into NW portal view was possible
(Where is the deployement tool in NW 7.1 CE?!?!?)
- I wanted to create a PAR-File by a WAR-File but dont know how?
- I did not find any iView template which is for my portlet type.
Did anyone out there has the same probs or could help me....
Thanks on advance,
Andi-)
Edited by: Markus Sümmchen on Oct 6, 2008 1:47 PMHi Markus,
There is no complete guide for integration of JSR-168 portlets into a portal; however Diyan is correct.
In a nutshell, once you have deployed your portlet, you use GPAL technology in the SAP NetWeaver Portal of CE to create an iView wrapper in the PCD. All of this done by a portal content admin in the Portal Content Studio. Your deployed portet should be displayed in the "Portlets" repository within the Portal Catalog of the Portal Content Studio.
For conceptual and how-to documentation, refer to the following SAP Help Portal links:
- Generic Portal Application Layer (GPAL) Repositories: http://help.sap.com/saphelp_nwce10/helpdata/en/44/5e93dc35624ddee10000000a1553f7/frameset.htm
- Integrating Applications into the Portal: http://help.sap.com/saphelp_nwce10/helpdata/en/45/90e8bfaec26c4ee10000000a1553f7/frameset.htm
- Working with GPAL Repositories: http://help.sap.com/saphelp_nwce10/helpdata/en/44/5b96b37b6f4de1e10000000a1553f7/frameset.htm
Please let me know if this works for you.
Michael -
Error : Content not available in jsr 168 portlet in sun one portal 7.1
I deployed jsr 168 portlet in Sun one portal and i have added that portlet ot one channel. But i am unable to see the content of that portlet
NewPortlet
ERROR: Content is not available
In the log file i am getting a null pointer exception
java.lang.NullPointerException
at com.sun.portal.portletappengine.impl.RequestResponseFactoryImpl.<init>(RequestResponseFactoryImpl.java:111)
at com.sun.portal.portletappengine.PortletAppEngineServlet.init(PortletAppEngineServlet.java:121)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1099)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:931)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4183)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4535)
at com.sun.enterprise.web.WebModule.start(WebModule.java:241)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:827)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:811)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:646)
at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1331)
at com.sun.enterprise.web.HttpServiceWebContainer.loadWebModule(HttpServiceWebContainer.java:867)
at com.sun.enterprise.web.WebContainer.loadWebModule(WebContainer.java:1040)
at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:160)
at com.sun.enterprise.server.WebModuleDeployEventListener.moduleDeployed(WebModuleDeployEventListener.java:246)
at com.sun.enterprise.admin.event.AdminEventMulticaster.invokeModuleDeployEventListener(AdminEventMulticaster.java:918)
at com.sun.enterprise.admin.event.AdminEventMulticaster.handleModuleDeployEvent(AdminEventMulticaster.java:905)
at com.sun.enterprise.admin.event.AdminEventMulticaster.processEvent(AdminEventMulticaster.java:427)
at com.sun.enterprise.admin.event.AdminEventMulticaster.multicastEvent(AdminEventMulticaster.java:139)
at com.sun.enterprise.admin.server.core.DeploymentNotificationHelper.multicastEvent(DeploymentNotificationHelper.java:288)
at com.sun.enterprise.deployment.phasing.DeploymentServiceUtils.multicastEvent(DeploymentServiceUtils.java:155)
at com.sun.enterprise.deployment.phasing.ServerDeploymentTarget.sendStartEvent(ServerDeploymentTarget.java:258)
at com.sun.enterprise.deployment.phasing.StartPhase.runPhase(StartPhase.java:87)
at com.sun.enterprise.deployment.phasing.DeploymentPhase.executePhase(DeploymentPhase.java:71)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.executePhases(PEDeploymentService.java:639)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:361)
at com.sun.enterprise.deployment.phasing.PEDeploymentService.start(PEDeploymentService.java:396)
at com.sun.enterprise.admin.mbeans.ApplicationsConfigMBean.start(ApplicationsConfigMBean.java:703)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.enterprise.admin.MBeanHelper.invokeOperationInBean(MBeanHelper.java:305)
at com.sun.enterprise.admin.config.BaseConfigMBean.invoke(BaseConfigMBean.java:360)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:836)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:761)
at sun.reflect.GeneratedMethodAccessor24.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.sun.enterprise.admin.util.proxy.ProxyClass.invoke(ProxyClass.java:54)
at $Proxy1.invoke(Unknown Source)
at com.sun.enterprise.admin.server.core.jmx.SunoneInterceptor.invoke(SunoneInterceptor.java:272)
at com.sun.enterprise.admin.jmx.remote.server.callers.InvokeCaller.call(InvokeCaller.java:38)
at com.sun.enterprise.admin.jmx.remote.server.MBeanServerRequestHandler.handle(MBeanServerRequestHandler.java:92)
at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.processRequest(RemoteJmxConnectorServlet.java:69)
at com.sun.enterprise.admin.jmx.remote.server.servlet.RemoteJmxConnectorServlet.doPost(RemoteJmxConnectorServlet.java:94)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:767)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:264)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:178)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)
at com.sun.enterprise.web.connector.httpservice.HttpServiceProcessor.process(HttpServiceProcessor.java:235)
at com.sun.enterprise.web.HttpServiceWebContainer.service(HttpServiceWebContainer.java:2114)
Please provide some helpHi,
Thanks for bringing this issue. Yes, the message should be SEVERE. This will be fixed.
You may also want to subscribe to [email protected] and bring up any issues, enhancements.
Regards,
Deepak -
JSR 168 portlets packaging question
Hello,
I have a bunch of Java (JSR 168, using Spring MVC) portlets (PortletOne, PortletTwo...PortletN) that I created as individual Portal Web projects and are contained in a Portal EAR project. This portal EAR is my deployment unit and also consists of another Portal Web project (Assembly.war) that holds a app.portal file where I plan to assemble all these Java portlets and use it to create a desktop. The reason for having all the individual portlets in web projects of their own is to be able to export them as a unit and use it elsewhere either as a shared library or package it within another EAR file as the need arises.
my application.xml looks somewhat like this:
<?xml version="1.0" encoding="UTF-8"?>
<application id="Application_ID" version="1.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/application_1_4.xsd">
<display-name>MyEar</display-name>
<module id="WebModule_1">
<web>
<web-uri>Assemby.war</web-uri>
<context-root>appname</context-root>
</web>
</module>
<module id="WebModule_2">
<web>
<web-uri>PortletOne.war</web-uri>
<context-root>PortletOne</context-root>
</web>
</module>
<module id="WebModule_3">
<web>
<web-uri>PortletTwo.war</web-uri>
<context-root>PortletTwo</context-root>
</web>
</module>
</application>But since all these WAR files are at the same level I cannot reference the context definitions and the controllers for the portlets defined in each of these portlet WAR files (PortletOne, PortletTwo,...) from the common web project that holds the app.portal file in Assembly.war. I tried to define a custom classloader structure in weblogic-application.xml and put the assembly war file at a lower level but the app even fails to deploy with IllegalAccessError as soon as a context for each of the war files is registered by the hot deploy process. Moreover, when I deploy the EAR file, the portlets defined in each of the WAR files do not appear in the Resources library when viewed from the Portal Administration console.
Any suggestions how to assemble these individual portlets into a common web project, while still keeping them packaged within the same EAR file? Alternate approaches are welcome too.
I have already considered deploying these portlet WAR files as Weblogic J2EE shared libraries. But with this approach, the overall application response time is very slow in spite of exhausting all tuning options and also cannot pre-compile JSPs in the shared libraries.
Is importing the JSR-168 portlets using the import utility as WSRP portlets a viable option? Will I be able to share session variables across portlets, fire and handle events and be able to pre-compile the JSP in idividual portlets?
Edited by: shyam6190 on Aug 13, 2009 1:25 PMHello,
Perhaps the multiple nested classloaders involved with the shared libraries approach is slowing it down- if that is the case, it would be hard to fix.
Using WSRP should work for you; there is a bit more complexity but if you have relatively simple portlets, use the correct JSR168 tags and methods (or the Spring bridge does), it shouldn't be too hard to get to work. The IDE may be able to help you with that; you can create a new portlet of type "remote portlet" in your aggregated webapp, and a wizard will walk you through the steps. If you use local proxy mode, the portlet's individual WSDL URL will be the URL to each portlet's webapp on localhost.
The WSRP configuration can also be done dynamically in the Portal Admin Tools, and even using a specialized JSR168 import tool, but both of these options would only create database instances of portals and portlets in your aggregating webapp. This would be fine if your aggregated EAR never needs to move to a different deployment environment, but if you require portability of the EAR to another environment it complicates packaging, as database information is also required. If you happen to be using WLP version 10.3, I believe there is a bug which prevents the specialized JSR168 import tool from working, but the tool is documented here:
http://download.oracle.com/docs/cd/E13155_01/wlp/docs103/prodOps/deployment.html#wp1047337
Since all the WSDL URLs will point only to the localhost, when you package the aggregated WAR file it should deploy properly to any servers. Information about the local proxy mode, which should improve performance for your configuration, is described here:
http://download.oracle.com/docs/cd/E13155_01/wlp/docs103/federation/Chap-Best_Practices.html#wp1010714
Hope this helps!
Kevin -
Mysterious JSF Error In JSR 168 Portlets
Hey everyone. I'm working with a rudimentary JSF application that I'm trying to surface in a JSR 168 portlet, and I'm running into a mysterious stack trace in our Portlet logs. I can deploy and surface the portlet just fine, but the following exception occurs when I put the portlet in VIEW mode:
Caused by: java.lang.UnsupportedOperationException
at javax.faces.context.FacesContext.getELContext(FacesContext.java:137)
at com.sun.faces.application.ApplicationImpl.createValueBinding(ApplicationImpl.java:467)
at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.pageBean(ViewHandlerImpl.java:697)
at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.pageBean(ViewHandlerImpl.java:676)
at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.renderView(ViewHandlerImpl.java:284)
...We're using the Apache JSF portlet bridge, but have noticed the same results using the Sun bridge. In any event, the exception is being thrown by a private method (getELContext) in the JSF API. I've been unable to gain any insight on what this exception means through Googling and stepping through the bridge code. Can anyone shed some light on what may be wrong?
Thanks,
JoeHey everyone. I'm working with a rudimentary JSF application that I'm trying to surface in a JSR 168 portlet, and I'm running into a mysterious stack trace in our Portlet logs. I can deploy and surface the portlet just fine, but the following exception occurs when I put the portlet in VIEW mode:
Caused by: java.lang.UnsupportedOperationException
at javax.faces.context.FacesContext.getELContext(FacesContext.java:137)
at com.sun.faces.application.ApplicationImpl.createValueBinding(ApplicationImpl.java:467)
at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.pageBean(ViewHandlerImpl.java:697)
at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.pageBean(ViewHandlerImpl.java:676)
at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.renderView(ViewHandlerImpl.java:284)
...We're using the Apache JSF portlet bridge, but have noticed the same results using the Sun bridge. In any event, the exception is being thrown by a private method (getELContext) in the JSF API. I've been unable to gain any insight on what this exception means through Googling and stepping through the bridge code. Can anyone shed some light on what may be wrong?
Thanks,
Joe -
Error while deploying a JSR 168 portlet developed in JDeveloper 10.1.3.2
When deploying a JSR 168 portlet created using JDeveloper 10.1.3.2 (Web Center Suite edition), I get the error :
"Shared library "oracle.wsrp" could not be found."
Error Log:
---- Deployment started. ---- Sep 20, 2007 9:31:42 AM
Target platform is Oracle Application Server 10g 10.1.3 (PolestarAppServerConnection).
Wrote WAR file to C:\Projects\eAlliance\JSR168\ViewController\deploy\jsr168.war
Wrote EAR file to C:\Projects\eAlliance\JSR168\ViewController\deploy\jsr168.ear
Backing up generic archive file :/C:/Projects/eAlliance/JSR168/ViewController/deploy/jsr168_generic.ear
Creating WSDLs for the WSRP Application
WSDLs for the WSRP Application have been created
Uploading file jsr168.ear ...
Uploading file jsr168.ear ...
Application Deployer for jsr168 STARTS.
Copy the archive to /home/soahome/orasoa/j2ee/home/applications/jsr168.ear
Initialize /home/soahome/orasoa/j2ee/home/applications/jsr168.ear begins...
Unpacking jsr168.ear
Done unpacking jsr168.ear
Unpacking jsr168.war
Done unpacking jsr168.war
Initialize /home/soahome/orasoa/j2ee/home/applications/jsr168.ear ends...
Starting application : jsr168
Initializing ClassLoader(s)
application : jsr168 is in failed state
Operation failed with error:
Shared library "oracle.wsrp" could not be found.
Deployment failed
Elapsed time for deployment: 39 seconds
#### Deployment incomplete. #### Sep 20, 2007 9:32:21 AM
Steps To recreate the error:
1)Create a new Application in JDeveloper
2)Click "New" in "ViewController" and click on WebTier->Portlets->Standards based(JSR 168) from the wizard.
3)Go thru JSR 168 Portlet wizard steps 1 thru' 8 accepting all defaults.
4)Click "New" in "ViewController" and click on General->Deployment Profiles->WAR File from the wizard.
5)Enter a name and hit OK. Then in the "WAR Deployment Profile Properties" page, select "Specify J2EE Web Context Root" and enter the name similar to what is in the "Enterprise application name" text box in the same screen. Hit OK.
6)Right click on the deploy file created under "Resources" and select "Deploy to AppServer" (I am deploying to a remote 10.1.4 Portal Server that has already been configured in my connections tab.
7)Note the above noted error message in the Deployment Log tab.
Can you give me any suggestions?
Thanks,
Bipin RajDoes the \j2ee\home\shared-lib directory contain a directory oracle.wsrp?
Does the <OC4J_HOME>/j2ee/home/config/server.xml file contain a shared-lib declaration for oracle.wsrp?
<shared-library name="oracle.wsrp" version="1.0">
<code-source path="wsrp-container.jar"/>
<code-source path="wsrp-types.jar"/>
<code-source path="wsrp-jaxb.jar"/>
<code-source path="jaxb-api.jar"/>
<code-source path="jaxb-impl.jar"/>
<code-source path="jaxb-libs.jar"/>
<code-source path="namespace.jar"/>
<code-source path="xsdlib.jar"/>
<code-source path="relaxngDatatype.jar"/>
<import-shared-library name="oracle.gdk"/>
<import-shared-library name="oracle.xml"/>
<import-shared-library name="oracle.jdbc"/>
<import-shared-library name="oracle.cache"/>
</shared-library> -
Yes, I know JDK 1.6 is not officially supported by JDeveloper 10.1.3.2.0.....
However up until now stability has been reasonably fair of the IDE - beside the occasional 'out-of-synch' status of JDeveloper, which so it seems still hasn't but fully resolved (and which I am familiar with). When creating a JSR 168 portlet using the wizard, the wizard completes without an error - but the sources never get generated. What I'm seeing is the message: "Building source index for project "Portlets.jpr" on the left-hand side of the statusbar and a progress-bar on the right-hand side with the label: "Scanning sources". This "never" ends and the only thing left to do is restart JDeveloper.
Any ideas whether this is JDK 1.6 related?Have tried this with JDK 1.5 setting, but no luck. I'm guessing this problem is more related to the fact I'm using Windows Vista than JDK 1.6. Last week I was able to generate JSR 168 portlet code on a file system that was pre-Vista formatted. Last weekend I reinstalled my machine and formatted my hard drives using Vista... I'm guessing that somehow this results in problems generated the sources.
Or is this too far fetched...?
Maybe you are looking for
-
SSRS 2008 Production orders created report, when I added item description some how cost group id is not working , my costgroup id did not break into labor , only Mat Cost showed in the total, my query is as below, did I link the wrong field, I wan
-
How to disable a single row of a multi-line text item
I am trying to disable a date and a price on each row where the date is current or in the past (on theory the user can't update reference data that is in effect or past, only data which is not yet in use). It appears that forms 6i will make this an a
-
Cannot uninstal FF and cannot access FF
OS Windows 7 (64 bit)s Cannot access Firefox 31 via desktop (FF icon has a locked padlock) or via Control Panel......etc All I get is a small window stating "Cannot load XPCOM". Cannot uninstall FF....even using '\helper.exe' Urgent help please.
-
HP Pavilion- HDMI to VGI cable Need settings for projectors
I have used my HP pavilion with the HDMI to VGI cable with success earlier. During a cient visit, the technicians changed the settings as it was not projecting and now I am unable to project it anywhere. Please help
-
Want to get ApEx session in JSP
Hi Pals, From my ApEx application, I am calling a JSP by providing a direct URL. THe JSP does some specific function here. If the user get the JSP url by right click and view source, they can very well use this outside my ApEx application. I want to