WorkShop 3.2.0 - WEB-INF/classes not included in war file
I've created the "Faces Example" project in Workshop Studio 3.2.0 and it's running fine. However, when I export the war file to run it on another server the class files located at "WEB-INF/classes" are not included with the war.
Any suggestions on what I may be doing wrong would be greatly appreciated.
thks!
Unfortunately no, the issue with output folder being ignored occurs only with example apps bundled with Workshop product.
You can try the following workaround:
- In Workshop, Project > Properties - Java Build Path, switch to Source tab - "Remove the source folder listing" - Click OK and dismiss Properties window.
- Project > Properties - Java Build Path > Source Tab, add the same source folder entry - Click OK
- Export as WAR
With this you should see the class files bundled under output directory structure (Ex: WEB-INF/classes).
Similar Messages
-
Is web-inf/classes like a exploded jar file?
ie, can it make sense to have an ejb-jar.xml in the web-inf/classes directory of a war file?
Petstore has one!
Thanks
MartinUnless I'm mistaken, yes, you could think of it this way.
In development, I usually compile things to WEB-INF/classes (and put .xml and .properties files there too) and when everything works, make a .jar of it.
Hope this helps.
Patrick -
WEB-INF/classes not searched?
I am developing an Struts application.
During development I just want to have my Actions and all other files in the projects package strukture, so I compile the classes to the WEB-INF/classes directory and ends up with a structure like
WEB-INF/classes/dk.acompagny.anapplication.viewcontroller.MyAction.class.
I find the compiled class in the directory structure but OC4J does not find it. Instead I get a runtime error like:
SEVERE: No action instance for path /login could be created
oracle.classloader.util.AnnotatedClassNotFoundException:
Missing class: dk.bladkompagniet.plus100.viewcontroler.LoginAction
Dependent class: org.apache.struts.util.RequestUtils
Loader: current-workspace-app.web.Bladkompagniet-Plus100-webapp:0.0.0
Code-Source: /home/fgjensen/Work/Src/Bladkompagniet/Plus100/public_html/WEB-INF/lib/struts.jar
Configuration: WEB-INF/lib/ directory in /home/fgjensen/Work/Src/Bladkompagniet/Plus100/public_html/WEB-INF/lib
This load was initiated at current-workspace-app.web.Bladkompagniet-Plus100-webapp:0.0.0 using the loadClass() method.
JDev lists the path it searches an the WEB-INF/classes directory is not listed. However, it finds my jsp pages and the default behavior of OC4J should be to search the WEB-INF/classes path.
Am I missing some configuration set?
Regards FlemmingForget it, I found the error: I have to learn to spell!
-
prefer-application-packages and prefer-web-inf-classes not working
Hi,
I'm upgrading to Weblogic 10.3.2 an application that was running quite fine in Weblogic 8. But I don't manage to get it working in WL 10. I'm getting a Class Not Found error (javax/xml/stream/XMLStreamWriter) but that class is in one of the jar files of my application: "<war-file>/WEB-INF/lib"
It seems a class loading problem but I'm using both <prefer-application-packages> and <prefer-web-inf-classes> and it's still not working. This is my weblogic-application.xml:
<?xml version='1.0' encoding='UTF-8'?>
<weblogic-application>
<prefer-application-packages>
<package-name>javax.xml.stream.*</package-name>
</prefer-application-packages>
</weblogic-application>
I'm deploying using an ear file wich contains a war file.
Logs:
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource [META-INF/cxf/cxf.xml]; nested exception is java.lang.NoClassDefFoundError: javax/xml/stream/XMLStreamWriter
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:420)
at org.apache.cxf.bus.spring.ControlledValidationXmlBeanDefinitionReader.doLoadBeanDefinitions(ControlledValidationXmlBeanDefinitionReader.java:109)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)
at org.apache.cxf.bus.spring.ControlledValidationXmlBeanDefinitionReader.loadBeanDefinitions(ControlledValidationXmlBeanDefinitionReader.java:131)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)
at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:109)
at org.apache.cxf.bus.spring.BusApplicationContext.loadBeanDefinitions(BusApplicationContext.java:263)
at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:123)
at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:422)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
at org.apache.cxf.bus.spring.BusApplicationContext.<init>(BusApplicationContext.java:91)
at org.apache.cxf.bus.spring.SpringBusFactory.createApplicationContext(SpringBusFactory.java:102)
at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:93)
... 57 more
Caused by: java.lang.NoClassDefFoundError: javax/xml/stream/XMLStreamWriter
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:621)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at weblogic.utils.classloaders.GenericClassLoader.defineClass(GenericClassLoader.java:344)
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:301)
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:269)
at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:56)
at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:42)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
at org.apache.cxf.bus.spring.TunedDocumentLoader.loadDocument(TunedDocumentLoader.java:112)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:396)
... 70 more
Caused by: java.lang.ClassNotFoundException: javax.xml.stream.XMLStreamWriterHi!
We have the jar xbean-2.2.0.jar in APP-INF/lib. That one contains the class javax.xml.namespace.NameSpaceContext. I saw that the same class was in another jar as well. I've removed it from the second jar and now it's only in the xbean-2.2.0.jar. But I still get the same error. Maybe there is something wrong in my application.xml? I have all the jars in APP-INF/lib and in <war-file>/WEB-INF/lib
Application.xml:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE application PUBLIC "-//Sun Microsystems, Inc.//DTD J2EE Application 1.3//EN" "http://java.sun.com/dtd/application_1_3.dtd">
<application id="Application_ID">
<display-name>RaadgiverPM</display-name>
<module>
<web>
<web-uri>rpm.war</web-uri>
<context-root>/raadgiverPM</context-root>
</web>
</module>
<library-directory>lib</library-directory>
</application>
2010-09-06 11:05:07,856 735360 [[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)'] ERROR no.delfidata.dr.wsclients.drwsclients.DRWebServiceClient - [DELFI] Failed to initialize client at http://172.16.10.113:8090/mockRpmGrpMemberRltnpLSvo_Binding?wsdl
java.lang.RuntimeException: org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource [META-INF/cxf/cxf.xml]; nested exception is java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.apache.cxf.staxutils.W3CDOMStreamWriter.getNamespaceContext()Ljavax/xml/namespace/NamespaceContext;" the class loader (instance of weblogic/utils/classloaders/ChangeAwareClassLoader) of the current class, org/apache/cxf/staxutils/W3CDOMStreamWriter, and the class loader (instance of <bootloader>) for interface javax/xml/stream/XMLStreamWriter have different Class objects for the type javax/xml/namespace/NamespaceContext used in the signature
at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:96)
at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:86)
at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:64)
at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:53)
at org.apache.cxf.BusFactory.getDefaultBus(BusFactory.java:69)
at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:106)
at org.apache.cxf.BusFactory.getThreadDefaultBus(BusFactory.java:97)
at org.apache.cxf.endpoint.dynamic.DynamicClientFactory.newInstance(DynamicClientFactory.java:132)
at groovyx.net.ws.AbstractCXFWSClient.createClient(AbstractCXFWSClient.java:198)
at groovyx.net.ws.WSClient.initialize(WSClient.java:107)
at groovyx.net.ws.IWSClient$initialize.call(Unknown Source)
at no.delfidata.dr.wsclients.drwsclients.DRWebServiceClient.initializeClient(DRWebServiceClient.groovy:47)
at no.delfidata.dr.wsclients.drwsclients.DRWebServiceClient$initializeClient$0.callCurrent(Unknown Source)
at no.delfidata.dr.wsclients.drwsclients.DRWebServiceClient.initializeClient(DRWebServiceClient.groovy:37)
at no.delfidata.dr.wsclients.drwsclients.DRWebServiceClient$initializeClient.callCurrent(Unknown Source)
at no.delfidata.dr.wsclients.drwsclients.DRWebServiceClient.<init>(DRWebServiceClient.groovy:33)
at no.delfidata.dr.wsclients.drwsclients.GenericWebServiceClient.<init>(GenericWebServiceClient.groovy:12)
at no.delfidata.dr.drintstd.channel.GenericWSClientManager.getClient(GenericWSClientManager.java:28)
at no.delfidata.dr.drintstd.channel.impl.WSChannelImpl.getData(WSChannelImpl.java:46)
at no.delfidata.dr.drintstd.integrationadapter.impl.AdapterWSImportRpmGrpMemberRltnpLSvo.getDataFromChannel(AdapterWSImportRpmGrpMemberRltnpLSvo.java:74)
at no.delfidata.dr.drintstd.integrationadapter.AbstractIntegrationAdapter.getDataImportFromChannel(AbstractIntegrationAdapter.java:232)
at no.delfidata.dr.drintstd.integrationadapter.AbstractIntegrationAdapter.getData(AbstractIntegrationAdapter.java:173)
at no.delfidata.dr.drintstd.integrationengine.impl.IntegrationEngineImpl.importData(IntegrationEngineImpl.java:113)
at no.delfidata.dr.drsvcstd.integration.impl.IntegrationServiceImpl.importCustomerData(IntegrationServiceImpl.java:117)
at no.delfidata.dr.drsvcstd.integration.impl.StartUpService.openAndImportCustomer(StartUpService.java:81)
at no.delfidata.dr.drstdgui.gui.control.ReceivingServletAction.execute(ReceivingServletAction.java:135)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at no.delfidata.dr.drbasis.gui.filter.MenuFilter.doFilter(MenuFilter.java:78)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at no.delfidata.common.gui.filter.SecurityFilter.doFilter(SecurityFilter.java:265)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3592)
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:2202)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2108)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1432)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
Caused by: org.springframework.beans.factory.BeanDefinitionStoreException: Unexpected exception parsing XML document from class path resource [META-INF/cxf/cxf.xml]; nested exception is java.lang.LinkageError: loader constraint violation
in interface itable initialization: when resolving method "org.apache.cxf.staxutils.W3CDOMStreamWriter.getNamespaceContext()Ljavax/xml/namespace/NamespaceContext;" the class loader (instance of weblogic/utils/classloaders/ChangeAwareClassLoader) of the current class, org/apache/cxf/staxutils/W3CDOMStreamWriter, and the class loader (instance of <bootloader>)
for interface javax/xml/stream/XMLStreamWriter have different Class objects for the type javax/xml/namespace/NamespaceContext used in the signature
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:420)
at org.apache.cxf.bus.spring.ControlledValidationXmlBeanDefinitionReader.doLoadBeanDefinitions(ControlledValidationXmlBeanDefinitionReader.java:109)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)
at org.apache.cxf.bus.spring.ControlledValidationXmlBeanDefinitionReader.loadBeanDefinitions(ControlledValidationXmlBeanDefinitionReader.java:131)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)
at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:109)
at org.apache.cxf.bus.spring.BusApplicationContext.loadBeanDefinitions(BusApplicationContext.java:263)
at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:123)
at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:422)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
at org.apache.cxf.bus.spring.BusApplicationContext.<init>(BusApplicationContext.java:91)
at org.apache.cxf.bus.spring.SpringBusFactory.createApplicationContext(SpringBusFactory.java:102)
at org.apache.cxf.bus.spring.SpringBusFactory.createBus(SpringBusFactory.java:93)
... 48 more
Caused by: java.lang.LinkageError: loader constraint violation in interface itable initialization: when resolving method "org.apache.cxf.staxutils.W3CDOMStreamWriter.getNamespaceContext()Ljavax/xml/namespace/NamespaceContext;" the class loader (instance of weblogic/utils/classloaders/ChangeAwareClassLoader) of the current class, org/apache/cxf/staxutils/W3CDOMStreamWriter, and the class loader (instance of <bootloader>) for interface javax/xml/stream/XMLStreamWriter have different Class objects for the type javax/xml/namespace/NamespaceContext used in the signature
at org.apache.cxf.bus.spring.TunedDocumentLoader.loadDocument(TunedDocumentLoader.java:112)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:396)
... 61 more -
WEB-INF/classes not in classpath issue - bug or specification?
I've noticed BC4J expects some of its configuration files to be present in the standard classpath or the application.
However, when running web-apps, the WEB-INF/classes are used for loading classes by the JVM, but they are not in the classpath literaly which causes BC4J not to find its metadata files - this has caused many people to be confused because they believed (like me) that the /classes folder is just another part of the classpath.
But someone has to solve this! After all, if I have a million web-apps, I (as a BC4J user) do not want to include a million JAR files in the classpath. I want to put the JAR in the classes directory and have BC4J find it automatically since its part of the web-app's classes, jars/zips and such.
The question is, is this a BC4J issue (not finding the files) or a Java Specification issue? and if this is a mere BC4J issue, why won't Oracle provide a small patch for BC4J (simply release an updated JAR/ZIP file)? Or instead, put it in BC4J release notes (unless its already there and I've missed it..) so that customers won't have to spend/waste valuable time trying to understand.
Regards to all,
Arik Kfir.Originally posted by Arik Kfir ([email protected]):
I've noticed BC4J expects some of its configuration files to be present in the standard classpath or the application.
However, when running web-apps, the WEB-INF/classes are used for loading classes by the JVM, but they are not in the classpath literaly which causes BC4J not to find its metadata files - this has caused many people to be confused because they believed (like me) that the /classes folder is just another part of the classpath.
But someone has to solve this! After all, if I have a million web-apps, I (as a BC4J user) do not want to include a million JAR files in the classpath. I want to put the JAR in the classes directory and have BC4J find it automatically since its part of the web-app's classes, jars/zips and such.
===========================================
If I understand you correctly, it sounds like you need to put the bc4j .jar files in the /j2ee/home/lib directory...by placing a jar file there, it becomes available to all web applications running inside OC4J...
does that solve your problem?
regards,
Mike Conway
UNC Chapel Hill -
Custom classes in Web-INF/classes not recognised
Can any body tell me why classes in WEB-INF/classes directory are not recognised by
the WebLogic while importing in JSP??
Thanks in advance
Hi all,
we were having the same problem - WebLogic not recognizing custome classes in
the WEB-INF/classes directory. As soon as we removed the Class-Path entries from
the WARs Manifest file (and placed the referenced JARs in the WEB-INF/lib directory)
everything worked fine. It seems as if WebLogic excludes WEB-INF/classes from
the classpath in case Class-Path entries in the manifest file are present.
Is there a patch for this? If yes, I'd appreciate your notice!
Cheers
Georg
[email protected] (Trace Lowe) wrote:
>Sounds like I'm having the same problem. I have a JSP application, in
>a WAR file, in an EAR (no EJBs). I'm trying to figure out where to
>place the utility jar files. I've read several threads, and
>documentation on WL7, and it seems that I should be able to place the
>jars in the WAR lib or classes directory. I tried both, neither seems
>to work. I even tried adding a "Class-Path" entry in the EAR manifest
>in hopes that it might work. Nope.
>
>Can anyone help?
>
>- Trace
>
>"Dineshkrn" <[email protected]> wrote in message news:<3d32cab0$[email protected]>...
>> Can any body tell me why classes in WEB-INF/classes directory are not
>recognised by
>> the WebLogic while importing in JSP??
>>
>>
>> Thanks in advance
-
Project librarys not included in WAR file with deployment (WEB-INF/lib)
Using JDeveloper 9.0.5.2
Project Libraries are not included in WEB-INF/lib when deploying. Although the files are selected in the deployment file at 'Contributors'. Within the 'filter' the .jar files are missing.
To solve it i have to register again (i have already made the librarys project library's) the files within Tools->ManageLibrarys as user library's.
The other workaround is to make the library's System Library's within the project.
In my opinion it is a bug that you must include the project librarys as user librarys within the 'LibraryManager'Unfortunately no, the issue with output folder being ignored occurs only with example apps bundled with Workshop product.
You can try the following workaround:
- In Workshop, Project > Properties - Java Build Path, switch to Source tab - "Remove the source folder listing" - Click OK and dismiss Properties window.
- Project > Properties - Java Build Path > Source Tab, add the same source folder entry - Click OK
- Export as WAR
With this you should see the class files bundled under output directory structure (Ex: WEB-INF/classes). -
Struts class not found for war file
Hello,
I am tring to deploy my struts web application in weblogic 8.1. I have all the
library files in web-inf\lib directory. It gave me the error that class not found
for some class in struts library. The console also told me the classpath. But
I can use javap to find the class using the same classpath. Could any one point
me some direction what I am doing wrong here.
Thanks.
Here is the error message:
java.lang.NoClassDefFoundError: org/apache/commons/beanutils/Converter.>
<Nov 13, 2003 11:05:29 AM EST> <Error> <HTTP> <BEA-101216> <Servlet: "action"
fa
iled to preload on startup in Web application: "voppocWebApp".
javax.servlet.ServletException: [HTTP:101250][ServletContext(id=9921725,name=vop
pocWebApp,context-path=/voppocWebApp)]: Servlet class org.apache.struts.action.A
ctionServlet for servlet action could not be loaded because a class on which it
depends was not found in the classpath C:\bea\weblogic81\server\bin\myserver\upl
oad\voppocWebApp.war;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extrac
t\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\activation30425.jar;C:
\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp
_voppocWebApp\jarfiles\WEB-INF\lib\commons-beanutils30426.jar;C:\bea\weblogic81\
server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\ja
rfiles\WEB-INF\lib\commons-collections30427.jar;C:\bea\weblogic81\server\bin\.\m
yserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF
\lib\commons-digester30428.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdel
ete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\commons-file
upload30429.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\mys
erver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\commons-lang30430.jar;C:\be
a\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_vo
ppocWebApp\jarfiles\WEB-INF\lib\commons-logging30431.jar;C:\bea\weblogic81\serve
r\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfile
s\WEB-INF\lib\commons-validator30432.jar;C:\bea\weblogic81\server\bin\.\myserver
\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\ja
karta-oro30433.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\
myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\jdbc2_0-stdext30434.jar;
C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebA
pp_voppocWebApp\jarfiles\WEB-INF\lib\mailapi30435.jar;C:\bea\weblogic81\server\b
in\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\W
EB-INF\lib\struts30436.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\
extract\myserver_voppocWebApp_voppocWebApp\jarfiles\_wl_cls_gen.jar.
java.lang.NoClassDefFoundError: org/apache/commons/beanutils/Converter.
at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubI
mpl.java:800)
at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppS
ervletContext.java:3236)
at weblogic.servlet.internal.WebAppServletContext.preloadServlets(WebApp
ServletContext.java:3181)Hello Mark,
Your suggested solution (putting an empty commons-logging.properties into
web-inf/classes or in a jar in web-inf/lib)
does not make any change at all. It still complains about not being able to
preload the servlet and still
gives exceptions upong calling upon LogFactory.
What I have been able to do is put the three classes from
com.bea.wlw.netui.util.logging into a separate jar
and add that to web-inf/lib.
However I am sometimes getting funny exceptions upon undeploy
(NoClassDefFoundError for org.apache.commons.collection.FastHashMap$KeySet).
Regards,
Robert Varga
"Mark Griffith" <[email protected]> wrote in message
news:[email protected]...
From a FAQ on netui:
1. Why do I get a ServletException while trying to deploy a struts web
application on a Workshop/Integration/Portal domain?
In the "<WL-HOME>/server/lib/knex.jar" file there is a properties file
called "commons-logging.properties" which configures the
com.bea.wlw.netui.util.logging.StrutsLogFactory class for Struts loggingas
below:
org.apache.commons.logging.LogFactory=com.bea.wlw.netui.util.logging.StrutsL
ogFactory
This class file is not available for a Struts web application that was not
built using Workshop, the reason being the containing NetUI jar files are
not present in the web application's WEB-INF/lib folder. This leads to a
ServletException while deploying the web application. The solution is toadd
a blank file (or a JAR containing the file) namedcommons-logging.properties
to the server CLASSPATH, or to the WEB-INF/lib folder of the concerned web
application. This issue will be fixed in Service Pack 2.
cheers
mbg
"Robert Varga" <[email protected]> wrote in message
news:[email protected]...
Hi Rob,
I also have a similar error with deploying a Struts web application into
a
8.1 Basic Workshop Domain created
by 8.1 Platform.
I get a ClassNotFoundException for 'com.wlw...StrutsLogFactory', whenStruts
tries to load any Jakarta class
from commons-beanutils or Struts which has logging.
This happens because commons-logging picks up some property whichinstructs
it to load that class, which is
naturally not included in most web applications, since it is
workshop-specific. This property definition, I think,
is in <bea>\weblogic81\server\knex.jar, called
commons-logging.properties,
containing the following line:
org.apache.commons.logging.LogFactory=com.bea.wlw.netui.util.logging.StrutsL
ogFactory
How can I override this in my webapp in a property file, so that when a
Struts or Beanutils class calls
LogFactory.getLog(org.apache.....<classname>.class), it would not try touse
the property file and the
class defined in knex.jar.
Thanks in advance,
Robert Varga
"Rob Woollen" <[email protected]> wrote in message
news:[email protected]...
Actually it complained about a NoClassDefFoundError. Generally this
is
caused by something in a parent classloader that is found but then
depends on something only loadable in a child classloader.
eg.
You have something in your $CLASSPATH that references something in the
WEB-INF/lib. This will NoClassDefFoundError.
So, as I recommended, remove everything you've added to the$CLASSPATH,
add the jars to WEB-INF/lib. If you're still having problems, show me
your $CLASSPATH, the contents of WEB-INF/lib, and the error message
/stack trace.
-- Rob
yuruo chen wrote:
Hello, Rob,
I did put the common-beanutils and other jar files in the
web-inf/lib
directory.
And from the weblogic console, I do see the jar file get included in
the
classpath.
(those generated file name have some number attached at the end.)
As
I
mentioned
before, I can use javap find the class using this weblogic generatedclasspath.
But weblogic complained that the class is not found.
Rob Woollen <[email protected]> wrote:
Remove anything you've added to the server's classpath.
Add the required jar files to WEB-INF/lib
-- Rob
yuruo chen wrote:
Hello,
I am tring to deploy my struts web application in weblogic 8.1. I
have
all the
library files in web-inf\lib directory. It gave me the error that
class
not found
for some class in struts library. The console also told me the
classpath.
But
I can use javap to find the class using the same classpath. Could
any
>>>>>
one point
me some direction what I am doing wrong here.
Thanks.
Here is the error message:
java.lang.NoClassDefFoundError:
org/apache/commons/beanutils/Converter.>
<Nov 13, 2003 11:05:29 AM EST> <Error> <HTTP> <BEA-101216>
<Servlet:
>>>>>
"action"
fa
iled to preload on startup in Web application: "voppocWebApp".
javax.servlet.ServletException:
[HTTP:101250][ServletContext(id=9921725,name=vop
pocWebApp,context-path=/voppocWebApp)]: Servlet classorg.apache.struts.action.A
ctionServlet for servlet action could not be loaded because a classon which it
depends was not found in the classpath
C:\bea\weblogic81\server\bin\myserver\upl
>
oad\voppocWebApp.war;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extrac
>
t\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\activation30425.jar;C:
>
\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp
>
_voppocWebApp\jarfiles\WEB-INF\lib\commons-beanutils30426.jar;C:\bea\weblogic81\
>
server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\ja
>
rfiles\WEB-INF\lib\commons-collections30427.jar;C:\bea\weblogic81\server\bin\.\m
>
yserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF
>
\lib\commons-digester30428.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdel
>
ete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\commons-file
>
upload30429.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\mys
>
erver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\commons-lang30430.jar;C:\be
>
a\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_vo
>
ppocWebApp\jarfiles\WEB-INF\lib\commons-logging30431.jar;C:\bea\weblogic81\serve
>
r\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfile
>
s\WEB-INF\lib\commons-validator30432.jar;C:\bea\weblogic81\server\bin\.\myserver
>
\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\ja
>
karta-oro30433.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\
>
myserver_voppocWebApp_voppocWebApp\jarfiles\WEB-INF\lib\jdbc2_0-stdext30434.jar;
>
C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\extract\myserver_voppocWebA
>
pp_voppocWebApp\jarfiles\WEB-INF\lib\mailapi30435.jar;C:\bea\weblogic81\server\b
>
in\.\myserver\.wlnotdelete\extract\myserver_voppocWebApp_voppocWebApp\jarfiles\W
>
EB-INF\lib\struts30436.jar;C:\bea\weblogic81\server\bin\.\myserver\.wlnotdelete\
extract\myserver_voppocWebApp_voppocWebApp\jarfiles\_wl_cls_gen.jar.
java.lang.NoClassDefFoundError:
org/apache/commons/beanutils/Converter.
atweblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubI
mpl.java:800)
atweblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppS
ervletContext.java:3236)
atweblogic.servlet.internal.WebAppServletContext.preloadServlets(WebApp
ServletContext.java:3181) -
prefer-web-inf-classes in weblogic.xml doesn't work
When I try to use <prefer-web-inf-classes>true</prefer-web-inf-classes> it works fine with default classloaders structure. But after I changed classloaders hierarhy by means of <classloader-structure> in weblogic-application.xml classes from web app are ignored and classes from outside web app are loaded.
Here is classloaders structure I use
<weblogic-application>
<classloader-structure>
<module-ref>
<module-uri>mywar.war</module-uri>
</module-ref>
<classloader-structure>
<module-ref>
<module-uri>myejb.jar</module-uri>
</module-ref>
</classloader-structure>
</classloader-structure>
</weblogic-application>
Has anybody encountered this before?Hi, Rob
Does it work in WL9.2?
It seems I do it exactly as the explained at http://edocs.bea.com/wls/docs81/programming/classloading.html - and it fails :o(.
I try to run my app.ear with WL9.2 There are 2 components in it: webapp and mdb. The webapp/WEB-INF contains weblogic.xml:
<weblogic-web-app>
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
</weblogic-web-app>
Mdb is expected to run in the same mode, i.e. to prefer the webapp/WEB-INF/*.jar over the parent Weblogic classloader. To do so I add the weblogic-application.xml to the app.ear!/META-INF:
<weblogic-application>
<classloader-structure>
<module-ref>
<!-- reminder: this webapp contains
prefer-web-inf-classes -->
<module-uri>webapp</module-uri>
</module-ref>
<classloader-structure>
<module-ref>
<module-uri>mdb.jar</module-uri>
</module-ref>
</classloader-structure>
</classloader-structure>
</weblogic-application>
Now, when classloader-structure specified, both webabb and mdb prefer the weblogic root loader as if prefer-web-inf-classes not defined at all. -
JARs in WEB-INF/classes on the classpath? [NEWBIE]
Hello,
I am under the impression that any files (including JARs and all within
them) are on the classpath if they are in the folder WEB-INF/classes.
I have a WAR file that contains a JAR file that in the WEB-INF/classes
folder. The JAR file contains a class under the package structure
"mvc.users.Members". I know its there as I checked the WAR file structure
before deploying.
In the WAR file I have a Struts RegisterAction class in the package/folder
"mvc.registration.RegisterAction" which has the following code to create a
Member object:
Member member = new Member();The Member class is imported into RegisterAction using
import mvc.users.Members;and JBuilder appears to recognise Members as on the classpath and compiles
with no errors.
My problem is after I have deployed the WAR file, submitting a form to the
RegisterAction gets the error below:
javax.servlet.ServletException: Servlet execution threw an exception:
root cause:
java.lang.NoClassDefFoundError: mvc/users/Member
mvc.registration.RegisterAction.execute(RegisterAction.java:22)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)If the class "mvc.users.Member" is in the JAR file in the WEB-INF/classes
folder and the "mvc.registration.RegisterAction" class in the WAR file
does (according to JBuilder) see the "mvc.users.Member" class on the
classpath and compiles... why then do I get this error?
Thanks for your help.
A Desperate Newbie,
MarkI answered this in the JSP forum - you need to put JAR files in WEB-INF/lib.
-
Web application deployment failure when Mozilla Rhino 15R2 included in war file
Hi Guys
I'm currently attempting to deploy a web application under weblogic 6.1.
The application makes use of Mozilla Rhino15R2, packaged in the file js.jar.
With js.jar contained in the WEB-INF\lib directory in the war file, the
application fails to install, the weblogic.log file has the following entry.
####<22-Oct-00 09:53:53 BST> <Info> <HTTP> <winnt2> <winnt2> <main> <system>
<> <101053> <[HTTP winnt2] Loading web app: SWIFTAccessControl>
####<22-Oct-00 09:53:53 BST> <Info> <HTTP> <winnt2> <winnt2> <main> <system>
<> <101059> <[winnt2] Loading SWIFTAccessControl from WAR file:
I:\bea\wlserver6.1\.\config\mydomain\applications\.wlnotdelete\wl_comp53845.
war>
####<22-Oct-00 09:53:53 BST> <Info> <HTTP> <winnt2> <winnt2> <main> <system>
<> <101031>
<[WebAppServletContext(6025277,SWIFTAccessControl,/SWIFTAccessControl)]
extracting classfiles to
I:\bea\wlserver6.1\config\mydomain\applications\.wlnotdelete\WEB-INF\_tmp_wa
r_winnt2_winnt2_SWIFTAccessControl:>
####<22-Oct-00 09:53:53 BST> <Debug> <HTTP> <winnt2> <winnt2> <main>
<system> <> <101158> <Exception thrown while loading SWIFTAccessControl:
java.lang.IllegalArgumentException: Prefix string too short>
java.lang.IllegalArgumentException: Prefix string too short
####<22-Oct-00 09:53:54 BST> <Error> <J2EE> <winnt2> <winnt2> <main>
<system> <> <160001> <Error deploying application SWIFTAccessControl: Could
not load SWIFTAccessControl>
If I rebuild the war file, excluding js.jar weblogic successfull deploys the
application and I can access the application. Question has anyone come
across a similar problem and does any one know of a solution. I'd be most
grateful for any help on this one.
Regards
TonyCheck this thread...
Spring's JSF DelegatingVariableResolver cause InvocationTargetException -
Class not found in web-inf/classes folder of war file within ear file
Hi all,
I am using Weblogic 8.1 sp4. I have a war file within an ear file. I am trying to deploy the war file with a few classes within its web-inf/classes folder, however when the classes are in that folder I consistently get a class not found exception when trying to instantiate them. If I package the classes in a jar file and then put that jar file within the web-inf/lib folder of the war, the classes are also not found.
If I put these two classes in the app-inf/classes folder of the ear file, everything works as expected and the classes are found.
Any ideas of why this is happening. This seems to be a very simple thing that should work, but appears to not be working at all.
thanks in advance for any suggestions or ideas.Hi,
This is a known limitation/issue with WL. There is also no way around this.
Regards,
LG -
How can I copy XML into WEB-INF/classes during webapp build in Workshop?
I am having difficulty performing what seems to be a simple task. I would like to move some XML configuration files from WEB-INF/src to WEB-INF/classes as part of the Workshop build. Unfortuantely, the class com.bea...WebAppBuildTask called from Ant only seems to know how to compile Java into the directory and to copy *.properties files. I am unable to find Javadoc on the class to see if there are configuration options. In addition, the actual location to which classes are compiled seems to be abstracted from me.
Any help would be appreciated.
Thanks,
ScottCreate a custom build file for the project and add a ant tasks to move
the files. The ant tasks would look something like this:
<!-- copy all property and xml config files to root -->
<copy todir="${dest.path}" overwrite="true" flatten="true">
<fileset dir="${src.path}">
<exclude name="**/*build*.xml"/>
<exclude name="**/*ant*.xml"/>
<include name="**/*.properties"/>
<include name="**/*.xml"/>
</fileset>
</copy>
HTH
Tom
Few other options include...
Place the properties file in a java project, instead of a web-project :(
Load them as resources relative to WEB-INF :(
Add a dummy project, tell the dummy project to use your own ant file
that does the moving. Order your projects to do this dummy project
before the web project :(
Best regards...
I am having difficulty performing what seems to be a
simple task. I would like to move some XML
configuration files from WEB-INF/src to
WEB-INF/classes as part of the Workshop build.
Unfortuantely, the class com.bea...WebAppBuildTask
k called from Ant only seems to know how to compile
Java into the directory and to copy *.properties
files. I am unable to find Javadoc on the class to
see if there are configuration options. In addition,
the actual location to which classes are compiled
seems to be abstracted from me.
Any help would be appreciated.
Thanks,
Scott
Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/ -
Classes are not loading from WEB-INF/classes directory
Hi All,
I am in a deep troble because the class files in the WEB-INF/classes directory are not loading.
I have deployed the application in Tomcat 6 server. And stored all class files under WEB-INF/classes dirctory. But when I execute a JSP page, I am getting following error:
HTTP Status 500 -
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: Unable to compile class for JSP:
JSP FileName:/hello.jsp
An error occurred at line: 1 in the jsp file: /hello.jsp
com.flt.Test cannot be resolved to a type
1: <%=new com.flt.Test().hello()%>
Stacktrace:
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:98)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:435)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:298)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:277)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:265)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:564)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:302)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)The classes are available in the WEB-INF/classes directory and the folder name and package name of the classes are correct. I have also tried to execute the application by creating a jar file and put it in the WEB-INF/lib directory. But I am getting same result.
Is it the problem with Tomcat configuration? When I gone through Tomcat documentation, I get to know that the WebAppX class loader in Tomcat, loads application specific classes for a web application. Is it possible to start/stop WebAppx classloader manually?
Please help me to solve this issue.
Many Thanks,
Francis Lukose
Edited by: francis_ on May 13, 2008 10:03 AMThanks for your reply, Soultech2012.
<%=new com.flt.Test().hello()%>is the only code in the JSP page. Just a single line. Nothing more than that.
The code in Test.java is as follows:
* To change this template, choose Tools | Templates
* and open the template in the editor.
package com.flt;
* @author Francis Lukose
public class Test {
public static String hello() {
return "hello";
}Many Thanks,
Francis
Edited by: francis_ on May 13, 2008 6:45 PM -
Classes not picked up from WEB-INF/classes
9ias R2: OC4j
Some classes could be found from WEB-INF/classes by JSP pages but some others could not.
WEB-INF/classes is part of the classpath in JSP's point of
view.
And if explicitly import the class such as
import abc;
in JSP pages and the class could be found.
Anybody has any idea? Or anything wrong I am doing?
Thanks!
David Yuan9ias R2: OC4j
Some classes could be found from WEB-INF/classes by JSP pages but some others could not.
WEB-INF/classes is part of the classpath in JSP's point of
view.
And if explicitly import the class such as
import abc;
in JSP pages and the class could be found.
Anybody has any idea? Or anything wrong I am doing?
Thanks!
David Yuan
Maybe you are looking for
-
Acrobat 9.4 encountered a problem and needs to close
We are embedding .pdf's using an OLE. When we open the document, this error message is received. I have duplicated it on two different computers. Thank you!
-
Write Out a DOM as an XML File in "pretty format"
Hi all, I am using javax.xml.transform.Transformer to Write Out a DOM as an XML File. (URL: http://java.sun.com/j2ee/1.4/docs/tutorial/doc/JAXPXSLT4.html) It runs very well but in the XML output, it is not "format". I means, for example, there are a
-
Replicate Response Profile and Service Profile to ECC
Hi In our client environmen we will be charging customer for various priorities of SLAs defined. And some more complex calculation for pricing, again dependent upon these. For this we have to replicate Response Profile and Service Profile to ECC. Whi
-
I have designed 18 "tee-signs" for our disc golf course. They print fine from Illustrator to various color printers. Now, we are getting them printed on a sticker which we will affix to a metal plate and post near the tees. The printer we are working
-
When is the lumia 920 coming out?
In the UK that is. Solved! Go to Solution.