One EAR , multiple WARs - CLASSPATH problem
Hi there,
According to [url http://e-docs.bea.com/wls/docs92/programming/splitcreate.html#wp1102496]WL 9 documentation, any thid-party library of my EAR located at APP-INF/lib can be referenced anywhere.
Unfortunately that's not happening ... :-(
This is my EAR scenario:
APP-INF\lib\log4j.jar
APP-INF\lib\struts.jar
APP-INF\lib\many-others.jar
ejb1.jar
ejb2.jar
web1.war (no jars inside)
web2.war (no jars inside)
web3.war (no jars inside)
There is no problem with EJB, but no web application can reach any jar from APP-INF\lib\ .
If I copy all jars to WEB-INF\lib inside a WAR, everything works fine. That won't be an option because I have 7 web modules and creating an EAR with the same jars 7 times is out of the question.
So, dear WL9 gurus, anyone could pull this off ? :-)
You may try to use JSP compiler class. Please specify 'compilerclass'
option in weblogic.xml. This option specifies name of a Java compiler
that is executed in WebLogic Servers's virtual machine. (Used in place of
an executable compiler such as javac or sj.)
Please see
http://e-docs.bea.com/wls/docs61/webapp/weblogic_xml.html#jsp-descriptor.
Paco Garcia wrote:
> oops!
>
> >$WL_HOME/./config/DOMAIN/applications/.wl_notdelete_EARNAME
> >/wlap#####/ejbjarname.jar
>
> >with DOMAIN=DOM1, WL_HOME=W, ejbjar name=EJB1, EARNAME=EAR1
> >you get:
> >/w/./config/DOM1/applications/.wl_notdelete_EAR1/wlap#####/EJB1.jar:
>
> please read SERVERNAME instead of EARNAME
>
> PacoG.
Regards,
Ann
Developer Relations Engineer
BEA Support
Similar Messages
-
Single EAR multiple WAR model - faces-config not loading
Hi
I am deploying my application on weblogic 10.3 My application is in form of a Single-EAR-Multiple-WAR model. The application starts up correctly but when i bavigate from one module (WAR) to another (WAR), it doesnt initializes the managed beans. It is not able to load the faces-config from the second WAR.
can anyone please let me know ehat am i missing?
Thanks a lot
-AnkurHi,
This is not an issue caused by having multiple wars inside same ear.
This looks like a runtime exception when trying to render the jsp (The jsp is compiled to a sevlet and the inside the service method of the servlet you are getting this exception). Double check you jsp for the possible cause of this exception.
Thanks,
Gopinath Ramasamy -
One EAR , three WARS, How many ServletContexts ?
I have deployed three war files in one ear file.
How many sevletContext and servletConfig I would have ?You'll have 3 ServletContexts and the number of ServletConfigs depends upon the number of servlets you have in your wars...
-
Common resources within EAR shared by multiple WARs
I am designing a relatively small enterprise application using IBM WebSphere Express 5.1 (Lite version). The way the application is packaged, or atleast how I want to package it, is to have two WAR files packaged under the single EAR. One WAR file corresponds to a publicly accessible site, and the other WAR corresponds to a secure section of the site, to be accessed via HTTPs.
A lot of images, text-based files like JavaScript, CSS and even JSPs (for header, footer, etc.) are common to both the WAR files. For maintenance reasons, I would like for these 'resource' files to be in a common area or in one of the WAR files, but also be referenced from the other WAR file.
I would like to know what is the possible and best way to store these common resource files. Keeping two copies, one in each WAR file, is what I do not want to do.
Can JSPs/servlets in one WAR file access JSP, HTML, CSS, JS, GIF, JPG, etc. in another WAR file? Is it recommended to maintain a third WAR file that contains only these resources, and is this even possible?
I would really appreciate all responses, and thank you all for reading/responding to this post.
--forum7if the resource is in the classpath (as opposed to being in a disk path) then accessing it must be accessed with a '/' preceding the path.
E.g. Runtime.getResourceAsStream("/some/class/path/file.gif"); will load the resource from a jar included in the classpath. To contrast Runtime.getResourceAsStream("this/is/a/someFile.gif"); will attempt to load the resource from disk.
This may be the same with EAR/WAR files.
(One problem may occurr when the /path/to/image.gif is interpreted by the server: it may try simply to access it as if the image url is from the server root...)
Happy coding.
--Xapp -
Multiple war file in single ear in ATG10.1.1 with JBoss
Hi All,
Is it possible to have multiple war files in single ear in ATG? I tried to deploy one but got some errors when. I tried this so that I can have a new site without altering existing crs.
I have an ATG10.1.1 instance (Windows 7, JBoss-eap-5.1, Oracle 11gR2) with crs installed and running.
I am not sure whether its a good practice or not. Please correct me if I am going wrong
Here is the steps that I have done.
1. Created new war file in CommerceReferenceStore (Copied existing store.war and renamed it to sample.war)
<ATG_DIR>/CommerceReferenceStore/Store/Storefront/j2ee-apps/Storefront/store.war to <ATG_DIR>/CommerceReferenceStore/Store/Storefront/j2ee-pps/Storefront/sample.war
then,
a) Edited sample.war/WEB-INF/web.xml to add new context root.
<context-param>
<param-name>context-root</param-name>
<param-value>sample</param-value>
</context-param>
b) Edited sample.war/META-INF/MANIFEST.MF
Manifest-Version: 1.0
ATG-Module-Uri: sample.war
ATG-Context-Root: sample
2. Edited <ATG_DIR>/CommerceReferenceStore/Store/Storefront/j2ee-apps/Storefront/META-INF/application.xml
Added new web module
<web>
<web-uri>
sample.war
</web-uri>
<context-root>
sample
</context-root>
</web>
3. Modified <ATG_DIR>/CommerceReferenceStore/Store/Storefront/META-INF/MANIFEST.MF to add new web module
ATG-Web-Module: j2ee-apps/Storefront/store.war j2ee-apps/Storefront/sample.war j2ee-apps/Storefront/storedocroot.war
j2ee-apps/Storefront/assemblerSearchResultsSample.war
4. Deployed using cim
From CIM, selected [3] Application Assembly & Deployment
Entered ear file name - ATGProduction.ear
Then select server instance - ATGProduction
Select JBoss Server to use - ATGProduction
[D] Deploy Production with a Server Lock Manager ATGProduction.ear to JBoss
- Done
[R] Register Datasources on JBoss - Done
[A] Add database driver to app server classpath - Done
[P] Post Deployment Actions on JBoss - Done
And restarted server.
When I tried to access crs/storeus, I got following error
18:50:36,060 ERROR [[jsp]] Servlet.service() for servlet jsp threw exception
java.lang.StringIndexOutOfBoundsException: String index out of range: -1258
at java.lang.String.<init>(String.java:207)
at atg.adc.ADCPrintWriter.write(ADCPrintWriter.java:208)
at atg.adc.ADCPrintWriter.write(ADCPrintWriter.java:188)
at org.apache.jasper.runtime.JspWriterImpl.flushBuffer(JspWriterImpl.java:119)
at org.apache.jasper.runtime.PageContextImpl.release(PageContextImpl.java:180)
at org.apache.jasper.runtime.JspFactoryImpl.internalReleasePageContext(JspFactoryImpl.java:118)
at org.apache.jasper.runtime.JspFactoryImpl.releasePageContext(JspFactoryImpl.java:77)
at org.apache.jsp.includes.pageStart_jsp._jspService(pageStart_jsp.java:135)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:638)
at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:543)
at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:480)
at atg.servlet.WrappingRequestDispatcher.include(WrappingRequestDispatcher.java:116)
at atg.taglib.dspjsp.IncludeTag.doEndTag(IncludeTag.java:835)
at org.apache.jsp.tag.web.store.pageContainer_tag._jspx_meth_dsp_005finclude_005f0(pageContainer_tag.java:1119)
at org.apache.jsp.tag.web.store.pageContainer_tag.doTag(pageContainer_tag.java:548)
at org.apache.jsp.index_jsp._jspx_meth_crs_005fpageContainer_005f0(index_jsp.java:484)
at org.apache.jsp.index_jsp._jspx_meth_dsp_005fpage_005f1(index_jsp.java:450)
at org.apache.jsp.index_jsp._jspService(index_jsp.java:117)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at atg.filter.dspjsp.PageFilter.innerDoFilter(PageFilter.java:277)
at atg.filter.dspjsp.PageFilter.doFilter(PageFilter.java:208)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at atg.servlet.ForwardFilter.doFilter(ForwardFilter.java:263)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:638)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:444)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:382)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:310)
at atg.servlet.ContextRootSwappingInterceptor.interceptRequest(ContextRootSwappingInterceptor.java:318)
at atg.servlet.pipeline.TailPipelineServlet.service(TailPipelineServlet.java:185)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.DispatcherPipelineServletImpl.service(DispatcherPipelineServletImpl.java:275)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.endeca.assembler.AssemblerPipelineServlet.service(AssemblerPipelineServlet.java:387)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.http.CookieBufferServlet.service(CookieBufferServlet.java:119)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.userprofiling.ExpiredPasswordServlet.service(ExpiredPasswordServlet.java:378)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.MimeTyperPipelineServlet.service(MimeTyperPipelineServlet.java:228)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.droplet.DropletEventServlet.service(DropletEventServlet.java:657)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.commerce.order.CommerceCommandServlet.service(CommerceCommandServlet.java:150)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.commerce.promotion.PromotionServlet.service(PromotionServlet.java:213)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.userprofiling.AccessControlServlet.service(AccessControlServlet.java:696)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.sessionsaver.SessionSaverServlet.service(SessionSaverServlet.java:2447)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.userprofiling.PageEventTriggerPipelineServlet.service(PageEventTriggerPipelineServlet.java:191)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.search.servlet.SearchClickThroughServlet.service(SearchClickThroughServlet.java:418)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.multisite.SiteSessionEventTriggerPipelineServlet.service(SiteSessionEventTriggerPipelineServlet.java:161)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.userprofiling.SessionEventTrigger.service(SessionEventTrigger.java:512)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.userprofiling.ProfilePropertyServlet.service(ProfilePropertyServlet.java:230)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.userprofiling.ProfileRequestServlet.service(ProfileRequestServlet.java:460)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.projects.store.servlet.pipeline.ProtocolSwitchServlet.service(ProtocolSwitchServlet.java:309)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.DynamoPipelineServlet.service(DynamoPipelineServlet.java:491)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.URLArgumentPipelineServlet.service(URLArgumentPipelineServlet.java:302)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.PathAuthenticationPipelineServlet.service(PathAuthenticationPipelineServlet.java:392)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.security.ThreadUserBinderServlet.service(ThreadUserBinderServlet.java:113)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.dtm.TransactionPipelineServlet.service(TransactionPipelineServlet.java:234)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.SecurityServlet.service(SecurityServlet.java:191)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.multisite.SiteContextPipelineServlet.service(SiteContextPipelineServlet.java:405)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.HeadPipelineServlet.passRequest(HeadPipelineServlet.java:1271)
at atg.servlet.pipeline.HeadPipelineServlet.service(HeadPipelineServlet.java:952)
at atg.servlet.pipeline.PipelineableServletImpl.service(PipelineableServletImpl.java:272)
at atg.filter.dspjsp.PageFilter.innerDoFilter(PageFilter.java:349)
at atg.filter.dspjsp.PageFilter.doFilter(PageFilter.java:208)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:183)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:95)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:451)
at java.lang.Thread.run(Thread.java:662)
18:50:36,122 ERROR [DynamoServlet]
CAUGHT AT:
CONTAINER:atg.servlet.jsp.ContainerJspException: java.lang.StringIndexOutOfBoundsException: String index out of range: -1258; SOURCE:org.apache.jasper
.JasperException: java.lang.StringIndexOutOfBoundsException: String index out of range: -1258
at atg.taglib.dspjsp.IncludeTag.doEndTag(IncludeTag.java:841)
at org.apache.jsp.tag.web.store.pageContainer_tag._jspx_meth_dsp_005finclude_005f0(pageContainer_tag.java:1119)
at org.apache.jsp.tag.web.store.pageContainer_tag.doTag(pageContainer_tag.java:548)
at org.apache.jsp.index_jsp._jspx_meth_crs_005fpageContainer_005f0(index_jsp.java:484)
at org.apache.jsp.index_jsp._jspx_meth_dsp_005fpage_005f1(index_jsp.java:450)
at org.apache.jsp.index_jsp._jspService(index_jsp.java:117)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:369)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:322)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:249)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at atg.filter.dspjsp.PageFilter.innerDoFilter(PageFilter.java:277)
at atg.filter.dspjsp.PageFilter.doFilter(PageFilter.java:208)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at atg.servlet.ForwardFilter.doFilter(ForwardFilter.java:263)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:638)
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:444)
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:382)
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:310)
at atg.servlet.ContextRootSwappingInterceptor.interceptRequest(ContextRootSwappingInterceptor.java:318)
at atg.servlet.pipeline.TailPipelineServlet.service(TailPipelineServlet.java:185)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.DispatcherPipelineServletImpl.service(DispatcherPipelineServletImpl.java:275)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.endeca.assembler.AssemblerPipelineServlet.service(AssemblerPipelineServlet.java:387)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.http.CookieBufferServlet.service(CookieBufferServlet.java:119)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.userprofiling.ExpiredPasswordServlet.service(ExpiredPasswordServlet.java:378)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.MimeTyperPipelineServlet.service(MimeTyperPipelineServlet.java:228)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.droplet.DropletEventServlet.service(DropletEventServlet.java:657)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.commerce.order.CommerceCommandServlet.service(CommerceCommandServlet.java:150)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.commerce.promotion.PromotionServlet.service(PromotionServlet.java:213)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.userprofiling.AccessControlServlet.service(AccessControlServlet.java:696)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.sessionsaver.SessionSaverServlet.service(SessionSaverServlet.java:2447)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.userprofiling.PageEventTriggerPipelineServlet.service(PageEventTriggerPipelineServlet.java:191)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.search.servlet.SearchClickThroughServlet.service(SearchClickThroughServlet.java:418)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.multisite.SiteSessionEventTriggerPipelineServlet.service(SiteSessionEventTriggerPipelineServlet.java:161)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.userprofiling.SessionEventTrigger.service(SessionEventTrigger.java:512)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.userprofiling.ProfilePropertyServlet.service(ProfilePropertyServlet.java:230)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.userprofiling.ProfileRequestServlet.service(ProfileRequestServlet.java:460)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.projects.store.servlet.pipeline.ProtocolSwitchServlet.service(ProtocolSwitchServlet.java:309)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.DynamoPipelineServlet.service(DynamoPipelineServlet.java:491)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.URLArgumentPipelineServlet.service(URLArgumentPipelineServlet.java:302)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.PathAuthenticationPipelineServlet.service(PathAuthenticationPipelineServlet.java:392)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.security.ThreadUserBinderServlet.service(ThreadUserBinderServlet.java:113)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.dtm.TransactionPipelineServlet.service(TransactionPipelineServlet.java:234)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.SecurityServlet.service(SecurityServlet.java:191)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.multisite.SiteContextPipelineServlet.service(SiteContextPipelineServlet.java:405)
at atg.servlet.pipeline.PipelineableServletImpl.passRequest(PipelineableServletImpl.java:157)
at atg.servlet.pipeline.HeadPipelineServlet.passRequest(HeadPipelineServlet.java:1271)
at atg.servlet.pipeline.HeadPipelineServlet.service(HeadPipelineServlet.java:952)
at atg.servlet.pipeline.PipelineableServletImpl.service(PipelineableServletImpl.java:272)
at atg.filter.dspjsp.PageFilter.innerDoFilter(PageFilter.java:349)
at atg.filter.dspjsp.PageFilter.doFilter(PageFilter.java:208)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:235)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:183)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:95)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:598)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:451)
at java.lang.Thread.run(Thread.java:662)
Thank you,Hi,
This is not an issue caused by having multiple wars inside same ear.
This looks like a runtime exception when trying to render the jsp (The jsp is compiled to a sevlet and the inside the service method of the servlet you are getting this exception). Double check you jsp for the possible cause of this exception.
Thanks,
Gopinath Ramasamy -
Deploy One Ear file for Multiples Projects
Hi,
I work with JDeveloper 9.0.3 and BC4J+UIXML+Jsp Pages and I organize my application in multiple projects, each one contain BC4J and UIXML programs.
I have a problem in deploy my application with JDeveloper Deploy Profiles because I can't deploy multiples projects in on .ear or .war files.
Today in development time, i build or rebuild my project and copy all executable files in manual mode to Oracle 9ias OC4J directory, into a deploy of one project, but i think that proccess is not correctly.
What i need to do ?
thanks.
DaniloIn order to include other projects in the EAR, you need to create deployment profiles (WAR,Jar..)in each project which will archive the contents of the project.
After that you need to create an EAR deployment profile and edit the properties to include other deployment profiles created earlier.
raghu
JDev Team -
Greetings Experts,
First of all, i've read so many threads here in this forum and i rarely find threads regarding Merging multiple WAR to a single EAR for deployment (CMIIW).
Anyway, i have an issue reagarding my applications.
Currenty, I have a lot of web applications, and each of them is deployed as a single EAR file into the weblogics 10.3.1. And lots of EAR is then deployed to a single Managed Server in WLS.
From reading many references, it seems that what i have done is not entirely correct, because of the inefficient use of resources in a single Managed server in WLS (lots of EAR in a single Managed Server (MS) may takes more overhead cost).
Therefore, i am planning to merge those small applications (EAR) to a single bigger EAR, so that it will reduce the numbers of EAR in a single managed server.
Currently, we are trying to merge the small application as WAR and combine them to EAR. FYI, we are using ADF based web application, thus, each web application (WAR) will have its own adfc and each.
At this moment, we are able to deploy a single EAR with 2 WARs inside it. However, when we try to run the application, only 1 application is able to be run. The other one is giving me "404 Page not Found".
By reading the forum, there is a lead on using adfc-setting.xml. We've tried using that but still did not work (probably our adfc-settings.xml is not correct).
My question is, are there any more references on how to merge WAR files to a single EAR from JDEV and deploy it to WLS 10.3.1. or anybody want to share their experiences?
Thank you in advanced...Is a different context root specified for the 2 web apps.
<application>
<display-name>test</display-name>
<module>
<web>
<web-uri>webapp1.war</web-uri>
<context-root>webapp1</context-root>
</web>
</module>
<module>
<web>
<web-uri>webapp2.war</web-uri>
<context-root>webapp2</context-root>
</web>
</module>
</application> -
Classpath problems in EAR packaging?
I try to access an EJB from a JSP. The JSP resides in web.war and the bean is in ejb.jar, and both of these are packaged together in an ear.
I get a compile error when I try opening a JSP. I've had this problem in all my attempts to use my bean classes from JSP.
My browser reports that the compiler cannot find the beans package. I have servlets within the war-file that are able to find the beans package, but the JSPs aren't.
My ear-file contains 3 files
ejb.jar
web.war
META-INF\MANIFEST.MF
The manifest classpath points to ejb.jar and web.war
My guess is that this has something to do with the way this is deployed by GlassFish.
The application is deployed in the
domains\mydomain\applications\j2ee-apps\myear\
This directory contains the expanded files:
ejb_jar\
web_war\
META-INF
So the Java classes under web_war\ are able to see the Java classes under ejb_jar\ (i.e. my servlets)
However; when GlassFish creates Java files from the JSPs and then tries to compile them, these files are placed under
domains\mydomain\generated\jsp\j2ee-apps\myear\web_war\org\apache\jsp\jsp
This might be correct for all I know, but apparently the compiler is unable to find the Java classes located under the mydomain\applications\.. directory when compiling classes located under the mydomain\generated\.. directory. There are no other files from my ear anywhere in the "generated" directory.
So to me this seems to be some kind of classpath problem, as the compiler cannot find the needed files.
Does this make any sense to anyone?
PS
In my ear, the JSPs are placed in the web.war. The war file looks like this:
jsp\
myjsp.jsp
META-INF
MANIFEST.MF
WEB-INF
web.xml
lib\
mylib.jarThanks
\\MariusMarius,
If you want communicate the bean you have to do following things.
. Create a factory for the correct protocol
. Obtain a Home
. Use the Home to create stubs to the remote object
So you want to call the Home and Remote interfaces to access the bean. When you run the client program, it will create the remote object that time it has to search the Home and Remote interfaces. So you have included those files for references in following location
WEB-INF/classes
-- <Home Interface File Name>.class
-- <Remote Interface File Name>.class
Or
WEB-INF/lib
-- <Bean Jar file name>.jar
I think you will understand.
-Mani -
I have an ear file that contains
staiAppln.ear
-> stai.war
-> staiEJB.jar
-> application.xml (defining stai.war as web module & staiEJB as EJB
module)
-> manifest.mf (empty except for version number)
staiEJB.jar contains the various classes and EJBs to support the web
app as well as a class that allows you to run the application from a
dos prompt
(eg java -cp staiEJB.jar;%CLASSPATH% stai.Client) which works fine.
The problem is how to configure the ear file so that you can run the
same prompt using the ear file (eg java -cp staiAppln.ear;%CLASSPATH%
stai.Client).
Currently I get a ClassNotFound exception on stai.Client as it is not
finding the class within staiEJB.jar. I have tried modifying the
manifest.mf and adding a classpath line, but that only worked if the
staiEJB.jar was in the same directory as the staiAppln.ear. Can anyone
point me in the right direction??
Thanks
TerryHi Terry,
EAR is a jar file. AFAIK you java can not load classes from
jars in a jar (unless you implement a classloader that can handle it).
So you could just unjar ear and put it's jars into the classpath.
Regards,
Slava Imeshev
"Terry Treadwell" <[email protected]> wrote in message
news:[email protected]..
I have an ear file that contains
staiAppln.ear
-> stai.war
-> staiEJB.jar
-> application.xml (defining stai.war as web module & staiEJB as EJB
module)
-> manifest.mf (empty except for version number)
staiEJB.jar contains the various classes and EJBs to support the web
app as well as a class that allows you to run the application from a
dos prompt
(eg java -cp staiEJB.jar;%CLASSPATH% stai.Client) which works fine.
The problem is how to configure the ear file so that you can run the
same prompt using the ear file (eg java -cp staiAppln.ear;%CLASSPATH%
stai.Client).
Currently I get a ClassNotFound exception on stai.Client as it is not
finding the class within staiEJB.jar. I have tried modifying the
manifest.mf and adding a classpath line, but that only worked if the
staiEJB.jar was in the same directory as the staiAppln.ear. Can anyone
point me in the right direction??
Thanks
Terry -
Session sharing among multiple WAR files inside an EAR file
Hi all,
Is there a way where I can share my session object among multiple WAR files which are inside an EAR file?
Please suggest.r035198x wrote:
Some application servers (like Weblogic) allow to configure session sharing when you deploy the application.Sidenote: which is completely against the servlet spec. -
Deploying multiple wars within an ear (including web services) - pls advise
**Apologies - this post also appears in the standard Java forums, before I realised there was a separate Enterprise forum!**
Hello all
I am working on an application that receives XML messages from sending systems, processes them and forwards them to receiving systems. There is a set of rules concerning who can send what to who. The entry and exit points to the application are web services.
I would be very grateful for some general advice on best practice for packaging this application. I have done a lot of browsing and read some articles, but I understand the whole picture has changed recently with the growing popularity of web services and that many of the articles I have read are probably out of date.
The whole thing could be packaged into a single war, but it would be ideal to treat the different components separately as in the future they may be modified and deployed separately. I therefore envisaged having 3 wars in an ear as follows: -
a. A set of incoming web services to receive messages from the sending system. This is like a hook into b (below). The sending systems will be clients to these web services.
b. A web application that takes the messages from a and processes, authenticates and transforms them.
c. A set of outgoing web services that sends the message on to the receiving system. These will be like facades to the receiving systems and b will be a client to them.
The whole thing would then work in reverse to process the response.
A few questions: -
1. I know I haven't given much info here, but does this seem like a reasonable basic packaging strategy? Any other suggestions?
2. Is it good practise to package multiple wars together into an ear? If anyone could send me an example ant script that does this, I would be so grateful.
3. Wars a and c above will both need to have full visibility and access to b, which is the "brains" of the whole thing. How is this best achieved when packaging?
4. If you could point me in the direction of a best practice guide, examples or tutorials, I would be very grateful.
Many thanks for taking the time to read my post - and for any replies.
Kind regards
JonThat is a viable method to package your application, pending the architecture of your application supports this.
Each WAR file will be packaged as a seperate web application and all web applications on that web server will be able to communicate with each other over sockets by having the URL of the web component that you wish to communicate with. This interface needs to be there mind you.
EAR files are generally deployed to an application server so if you happen to have an application server like Weblogic or Websphere then this would be an ideal setting for hosting your application. Packaging in an EAR file and also hosting on an application server gives you the benefit of using J2EE constructs, like EJB's to provide an alternative means of communication between different web components.
Packaging seperate wars into an ear file really wouldn't work out too well with just a standard servlet container like Tomcat. -
Sharing static files across multiple WAR files in a single EAR
Is there also a way to share the Session across multiple WARs in the
same EAR ??
TIA
Nikhil.
Vinod Mehra wrote:
Yes, we have Virtual Directories for this in 7.0.
http://edocs.bea.com/wls/docs70/webapp/weblogic_xml.html#1031951
--Vinod.
"Sam Smith" <[email protected]> wrote in message
news:3d3f47cf$[email protected]..
Hi,
I have multiple web apps to be deployed to an intranet. I need to have acommon
look and feel for these multiple webapps.
I could place the webapps in a single ear file or deploy them without aear file.
I wanted to know if there is any standard way to include static files likeimages,
javascripts and css files (for a common look and feel) across multiple warfiles.
Right now I am planning to keep a war file which just contains all thestatic
files and point all the jsp pages in the other apps to the static files inthis
common app. Is there a better way to go about this.
Thanks,
Sam -
Does anyone have the problem of only one ear plug working on the life case for iPhone?
I have a life case for my iPhone...when I add my earphones to it, only one ear phone works...?
What troubleshooting steps have you taken?
Try these:
- Quit the App by opening multi-tasking bar, and swiping the App upward to make it disappear. (For iOS 6, holding down the icon for the App for about 3-5 seconds, and then tap the red circle with the white minus sign.)
- Relaunch the App and try again.
- Restart the device. http://support.apple.com/kb/ht1430
- Reset the device. (Same article as above.)
- Reset All Settings (Settings > General > Reset > Reset All Settings)
- Restore from backup. http://support.apple.com/kb/ht1766 (If you don't have a backup, make one now, then skip to the next step.)
- Restore as new device. http://support.apple.com/kb/HT4137 For this step, do not re-download ANYTHING, and do not sign into your Apple ID. -
my 3gs has stopped playing music through the speakers, they play with headphones but only through one ear. It seems the phone thinks the headphones are in all the time. The ringer still works when called and i have cleaned the headphone socket the best i can without damaging the phone! Any ideas?
I had the same issue, 4s running ios8, but the plugging and unplugging the headphones did not work, BUT, when I tried plugging and unplugging from the DOCK, it started to work again. There must have been a short in the power plug, not the headphones. I also blew out the bottom power plug with computer safe airjet. Hope this one helps anyone else having the issue.
-
Classloading [EAR] - [webapp.war+ejb.jar]
Hi.
I've got a problem with the classloader hierarchy in WL 6.0.
When I deploy my war/ejb application as an EAR, everything works fine.
But I want (for several reasons) to deploy
EJB jars and WebApp wars (or exploded Web Apps) seperately.
WL 6.0 EJB classloader doesn't export remote/home interfaces and
helper classes,
so my web app can't find them.
When I include that interfaces/classes in my Web App, I get
occasionally ClassCastExceptions (I assume depending on classloader
caching).
Is there a way to configure the classloader hierarchy, or do you have
any other solution for this?
Thanks,
RomanHello,
I have a big application to do.
So, one solution should be to use an EAR for one
module, containing the WAR for the web-tier and the
EJB-JAR for the business-tier.
It would be better doing like this than creating a
big WAR, in order to avoid to deploy a big WAR when a
modification is done in one module.Are you using local EJBs or remote EJBs? The only way for a war to talk to a local EJB is to package the war along with the ejb-jar in an EAR file because they need to be collocated. You can not simply bundle EJB classes in a war file.
If you are using remte EJBs, then you can package the EJB client view classes along with the servlets and JSPs in the war file and deploy the war separately. But again your war will be one big war.
If your EJBs are just entity beans, then Java EE 5 (see http://weblogs.java.net/blog/ss141213/archive/2005/12/using_java_pers.html) allows you some nice options.
>
What about the problem of the session ?
In fact, I have to declare a context-root for one
EAR.
And at each context-root is created an object
HttpSession on the server.
So, I have some questions about this :
- How can I configure my WARs in order to use only
one HttpSession object for every WARs ?
There is no standard way to do this. Relying on any application server specific feature can only make your app non-portable. So I strongly recommend you not to do this.
- Can I put multiple WARs in one EAR ?Of course you can.
If yes, what about the context-root ? This solution would resolve
the session problem.Can't be solved using any standard way. So I suggest you stick to one big war, if that's what your business requirement is.To speed up development-deployment-test cycle, any appserver allows a rapid deployment option where in you can deploy incremental changes to server. Use this facility during development. DON'T sacrifice portability of your app by using any product specific configuration that you may not find any where else.
Thanks,
Sahoo
Maybe you are looking for
-
Is anybody else experiencing problems accessing the itunes store?
i'm on a macbook pro 10.6.8. my itunes is 10.3.1. i haven't experienced problems before, just today when i was trying to update some iphone apps. the updates wouldn't download and it kept giving me the network timeout error. i checked my connection
-
Unable to start the database(Process m000 died, see its trace file)
Hi, Oracle Version:10.2.0.1 Operating System:Linux Hi suddenly the database went down and in alert logfile it is showing error like this. Fri Feb 18 01:40:51 2011 Process m000 died, see its trace file Fri Feb 18 01:40:51 2011 ksvcreate: Process(m000)
-
Connect from Weblogic JMS queue to SAP WAS JMS queue
Hi, I am trying to setup a WLS 8.1 messaging bridge between a weblogic JMS queue and a SAP WAS JMS queue. I have configured a queue on both Weblogic and SAP WAS and I have set up the messaging bridge and bridge destintations in weblogic. However when
-
When i'm open my creative cloud it's close fast
i dont know whats happen with me Creative Cloud, I'm opening and i've just click and he closes, i need heeeeelp, please... i need install the apps and i cant, because my creative cloud just close.
-
Windows Boot camp drivers won't install
So I'm trying to put windows on my mac again, for the fifth time since windows won't let me activate it anymore. Everything goes fine and it installs and I put the Mac os x install disc 1 in to install the drivers. It loads up and goes through the pr