ClassNotFoundException dependent on JDK7 update version only? - java

I inherited a JBOSS 4.2.3.GA .ear project in which everything loads and runs fine if I build it with JDK 7u45, but fails to load & run early in the JBoss Bootstrap if I build it with any newer update of JDK 7 (e.g. 7u76, 7u79, 7u80).
The JBOSS server itself runs on Java 1.7.0_45.
The logged reason for the failure is a ClassNofFoundException for a class that is actually there (even for the failing .ear):
log4j:ERROR Could not create the Layout. Reported error follows.
java.lang.ClassNotFoundException: dbs.common.logger.CsvLayout
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:190)
at org.apache.log4j.helpers.Loader.loadClass(Loader.java:178)
at org.apache.log4j.xml.DOMConfigurator.parseLayout(DOMConfigurator.java:555)
at org.apache.log4j.xml.DOMConfigurator.parseAppender(DOMConfigurator.java:269)
at org.apache.log4j.xml.DOMConfigurator.findAppenderByName(DOMConfigurator.java:176)
at org.apache.log4j.xml.DOMConfigurator.findAppenderByReference(DOMConfigurator.java:191)
at org.apache.log4j.xml.DOMConfigurator.parseChildrenOfLoggerElement(DOMConfigurator.java:523)
at org.apache.log4j.xml.DOMConfigurator.parseCategory(DOMConfigurator.java:436)
at org.apache.log4j.xml.DOMConfigurator.parse(DOMConfigurator.java:999)
at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:867)
at org.apache.log4j.xml.DOMConfigurator.doConfigure(DOMConfigurator.java:773)
at org.apache.log4j.xml.DOMConfigurator.configure(DOMConfigurator.java:901)
at org.jboss.logging.Log4jService$URLWatchTimerTask.reconfigure(Log4jService.java:643)
at org.jboss.logging.Log4jService$URLWatchTimerTask.run(Log4jService.java:582)
at org.jboss.logging.Log4jService.setup(Log4jService.java:460)
at org.jboss.logging.Log4jService.createService(Log4jService.java:476)
at org.jboss.system.ServiceMBeanSupport.jbossInternalCreate(ServiceMBeanSupport.java:260)
at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:243)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
at com.sun.proxy.$Proxy0.create(Unknown Source)
at org.jboss.system.ServiceController.create(ServiceController.java:330)
at org.jboss.system.ServiceController.create(ServiceController.java:273)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at com.sun.proxy.$Proxy4.create(Unknown Source)
at org.jboss.deployment.SARDeployer.create(SARDeployer.java:260)
at org.jboss.deployment.MainDeployer.create(MainDeployer.java:969)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:818)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:766)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at com.sun.proxy.$Proxy5.deploy(Unknown Source)
at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:482)
at org.jboss.system.server.ServerImpl.start(ServerImpl.java:362)
at org.jboss.Main.boot(Main.java:200)
at org.jboss.Main$1.run(Main.java:508)
at java.lang.Thread.run(Thread.java:744)
Normally, I would easily find a real reason for a ClassNofFoundException, but this time I am baffled, considering the following facts:
The entire environment (including the CLASSPATH!) for the .ear is identical.
The aforementioned "not found class" dbs.common.logger.CsvLayout is in the common.jar file in exactly the same path where it is supposed to be.
There are no errors in the build whatsoever.
On someone else's development workstation (same Eclipse, etc.) building that .ear with JDK 7u79 (i.e. later update than 7u45), results in a .ear that properly loads and runs (on same server and environment).
What could possibly explain such ClassNofFoundException?
What am I missing?
Update:
Comparing the "not found" CsvLayout.class between the working and not working common.jar file, shows that there is a difference in the major_version of the class file format. The working one has 0x33 (Java SE 7), the failing has 0x34 (Java SE 8).
I have been careful to always work with Execution Environments that are jre7 only. How did that 0x34 sneak in?

The problem comes from the fact that the library common.jar: is built using java 8 without specifying the target classfile version, and so a jar file with java 8 class file versions is generated.
To build Java 7 classfile with Java 8 you need to
pure java compilation: add the target option javac -target 1.7 <javafile>
maven: add the property <maven.compiler.target>1.7</maven.compiler.target>
ant: add <property name="ant.build.javac.source" value="1.7"/> <property name="ant.build.javac.target" value="1.7"/>to your build.xml

Related

conflit version java :UnsupportedClassVersionError: Bad version number in .class file

I created a runnable jar with 1.5.0.07 java version, I deployed it to a server which runs with the same version of java,
I had two methods which use the same spring jdbc , when I run the jar in the server the first method works fine but the second return this error :
Exception in thread "main" java.lang.reflect.InvocationTargetException
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:585)
at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
Caused by: java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at com.auto.dao.ContractsDAO.getContractsList(ContractsDAO.java:46)
at com.auto.main.AutoReactivation.main(AutoReactivation.java:88)
When I googled this problem, I find that's a problem of conflict different Java JDK but I don't get it because I have the same version of java in my project and in the server.

Solr Learning to Rank Plugin Setup?

I am trying to setup the Learning to Rank Plugin for Solr located here:
https://github.com/bloomberg/lucene-solr/tree/master-ltr-plugin-release/solr/contrib/ltr
I've got the Java JDK as well as Apache Ant all set up as that is what the plugin uses to compile and I have verified that both of those are setup properly as their commands are recognized. Note that I am running on Windows 7.
I follow the instructions listed below in that link, but cannot even get passed the first step. I execute the commands to compile "ant dist" and "ant server" and I just get a NullPointerException. I've tried compiling at the root directory, the "solr" directory, as well as just the "ltr" directory, but I get the same error each time.
I'm not sure if its an issue with the plugin being outdated or something I'm missing with my setup as there does not seem to be much info on issues with these particular components. Hoping I can find somebody who might know what's going wrong here. Any input is greatly appreciated!
Oh and here is the error message I get when trying to compile:
C:\Users\aan7771\Desktop\SOLR-ML-PLUGIN\lucene-solr-master-ltr-plugin-release\so
lr>ant dist
Buildfile: C:\Users\aan7771\Desktop\SOLR-ML-PLUGIN\lucene-solr-master-ltr-plugin
-release\solr\build.xml
BUILD FAILED
C:\Users\aan7771\Desktop\SOLR-ML-PLUGIN\lucene-solr-master-ltr-plugin-release\so
lr\build.xml:39: The following error occurred while executing this line:
C:\Users\aan7771\Desktop\SOLR-ML-PLUGIN\lucene-solr-master-ltr-plugin-release\so
lr\common-build.xml:54: The following error occurred while executing this line:
C:\Users\aan7771\Desktop\SOLR-ML-PLUGIN\lucene-solr-master-ltr-plugin-release\lu
cene\module-build.xml:27: The following error occurred while executing this line
:
C:\Users\aan7771\Desktop\SOLR-ML-PLUGIN\lucene-solr-master-ltr-plugin-release\lu
cene\common-build.xml:542: java.lang.NullPointerException
at java.util.Arrays.stream(Arrays.java:5004)
at java.util.stream.Stream.of(Stream.java:1000)
at java.util.stream.ReferencePipeline$7$1.accept(ReferencePipeline.java:
267)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:
193)
at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators
.java:948)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.ja
va:471)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:545)
at java.util.stream.AbstractPipeline.evaluateToArrayNode(AbstractPipelin
e.java:260)
at java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:438
)
at org.apache.tools.ant.util.ChainedMapper.lambda$mapFileName$1(ChainedM
apper.java:36)
at java.util.stream.ReduceOps$1ReducingSink.accept(ReduceOps.java:80)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.j
ava:1382)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.ja
va:471)
at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java
:708)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.reduce(ReferencePipeline.java:484)
at org.apache.tools.ant.util.ChainedMapper.mapFileName(ChainedMapper.jav
a:35)
at org.apache.tools.ant.util.CompositeMapper.lambda$mapFileName$0(Compos
iteMapper.java:32)
at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:
193)
at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:
175)
at java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.j
ava:1382)
at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.ja
va:471)
at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:545)
at java.util.stream.AbstractPipeline.evaluateToArrayNode(AbstractPipelin
e.java:260)
at java.util.stream.ReferencePipeline.toArray(ReferencePipeline.java:438
)
at org.apache.tools.ant.util.CompositeMapper.mapFileName(CompositeMapper
.java:33)
at org.apache.tools.ant.taskdefs.PathConvert.execute(PathConvert.java:36
3)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.jav
a:106)
at org.apache.tools.ant.Task.perform(Task.java:346)
at org.apache.tools.ant.Target.execute(Target.java:448)
at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:
172)
at org.apache.tools.ant.taskdefs.ImportTask.importResource(ImportTask.ja
va:221)
at org.apache.tools.ant.taskdefs.ImportTask.execute(ImportTask.java:165)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.jav
a:106)
at org.apache.tools.ant.Task.perform(Task.java:346)
at org.apache.tools.ant.Target.execute(Target.java:448)
at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:
172)
at org.apache.tools.ant.taskdefs.ImportTask.importResource(ImportTask.ja
va:221)
at org.apache.tools.ant.taskdefs.ImportTask.execute(ImportTask.java:165)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.jav
a:106)
at org.apache.tools.ant.Task.perform(Task.java:346)
at org.apache.tools.ant.Target.execute(Target.java:448)
at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:
172)
at org.apache.tools.ant.taskdefs.ImportTask.importResource(ImportTask.ja
va:221)
at org.apache.tools.ant.taskdefs.ImportTask.execute(ImportTask.java:165)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.jav
a:106)
at org.apache.tools.ant.Task.perform(Task.java:346)
at org.apache.tools.ant.Target.execute(Target.java:448)
at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:
183)
at org.apache.tools.ant.ProjectHelper.configureProject(ProjectHelper.jav
a:93)
at org.apache.tools.ant.Main.runBuild(Main.java:824)
at org.apache.tools.ant.Main.startAnt(Main.java:228)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:283)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:101)
Total time: 0 seconds
C:\Users\aan7771\Desktop\SOLR-ML-PLUGIN\lucene-solr-master-ltr-plugin-release\so
lr>

Eclipse RCP application starts only as administrator

A few days ago we decided to start using Guava in our Eclipse RCP application. I downloaded guava-14.0.1.jar from http://central.maven.org/maven2/com/google/guava/guava/14.0.1/.
After I had started eclipse.exe the application crashed. The .metadata/.log file contained the following errors:
!ENTRY org.eclipse.osgi 4 0 2013-08-12 15:56:32.033
!MESSAGE Application error
!STACK 1
java.lang.NoClassDefFoundError: com/google/common/base/Optional
at com.treeage.treeagepro.license.LicenseLevel.<clinit>(Unknown Source)
at com.treeage.treeagepro.license.LicenseInfo.<init>(Unknown Source)
at com.treeage.treeagepro.license.LicenseManager.<init>(Unknown Source)
at com.treeage.treeagepro.license.LicenseManager.getManager(Unknown Source)
at com.treeage.treeagepro.app.ApplicationWorkbenchAdvisor.initialize(Unknown Source)
at org.eclipse.ui.application.WorkbenchAdvisor.internalBasicInitialize(WorkbenchAdvisor.java:188)
at org.eclipse.ui.internal.Workbench$28.runWithException(Workbench.java:1541)
at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:31)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4144)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3761)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2609)
at org.eclipse.ui.internal.Workbench.access$4(Workbench.java:2499)
at org.eclipse.ui.internal.Workbench$7.run(Workbench.java:679)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:668)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at com.treeage.treeagepro.app.Application.start(Unknown Source)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
Caused by: java.lang.ClassNotFoundException: com.google.common.base.Optional
at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:501)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)
at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 31 more
There is no error if the application is running as an administrator.
The application is 64 bit, so this is not an UAC virtualization issue. But it looks like the problem is somehow connected with permissions.
guava-14.0.1.jar seems to be a valid OSGi bundle: https://code.google.com/p/guava-libraries/issues/detail?id=688 (At least I found all necessary headers in MANIFEST.MF)
Any suggestions?
I fixed my problem by wiping out C:\Users\<user_name>\.eclipse folder. It looks like the problem was somehow connected with OSGi (Equinox) temporary directories.
Double check if you have included the bundle in the feature that you are using in the product configuration of your RCP.
Double check if you are using the right symbolic name and if you are requiring the right version.
I had a problem like yours because the guava jar was not being copied properly to the target platform at build time.
In my case I had to add the following in the feature.xml to ensure the version 0.14.1 was being copied since Eclipse Xtext and other components uses an older one:
<requires>
<import plugin="com.google.guava" version="0.14.1"/>
....
</requires>
<plugin
id="com.google.guava"
download-size="0"
install-size="0"
version="0.0.0"
unpack="false"/>
Based on your last comment, I'd think this isn't Java or OSGi related, but probably just a filesystem permission issue.
You may want to:
check that particular folder and its subfolders and files for unusal permission requirements (right-click, properties, security tab),
delete the entire folder, recreate it, and try again to check for a different outcome.

Building with jdk 1.7, Unable to call web service using jboss 4.2.3.GA ( runtime environment java 1.7). Error: Cannot build JAXB context

In eclipse, I am building my project with jdk 1.5, I am using jre 1.5 and it is working fine with jboss 4.2.3.GA (if i am using jboss runtime environment java 1.5)...no issue
In eclipse, I am building my project with jdk 1.7, I am using jre 1.7 and it is NOT working fine with jboss 4.2.3.GA (if i am using jboss runtime environment java 1.5)...not working ....no issue
.
.
But the issue is with .....
In eclipse, I am building my project with jdk 1.7, I am using jre 1.7 and it is NOT working with jboss 4.2.3.GA (if i am using jboss runtime environment java 1.7).
In 3rd case the project doesn't show any error.
But as i am starting the jboss.....On console i find the Error...Cannot build JAXB context
Or, JDK 1.7 is not compatible with jboss 4.2.3.GA ?
I am pasting the console description here:
Initializing Application: /usr/home/
12:56:20,770 INFO [[/lb]] app: Application Library correctly initialized!
12:56:20,773 INFO [STDOUT]
Application 'Library ' initialized at Wed Dec 05 12:56:20 IST 2012
12:56:24,179 ERROR [MainDeployer] Could not start deployment: file:/software/jboss/jboss-4.2.3.GA/server/deploy/lb.war/
java.lang.IllegalStateException: Cannot build JAXB context
at org.jboss.ws.metadata.builder.jaxws.JAXWSMetaDataBuilder.createJAXBContext(JAXWSMetaDataBuilder.java:953)
at org.jboss.ws.metadata.builder.jaxws.JAXWSWebServiceMetaDataBuilder.buildWebServiceMetaData(JAXWSWebServiceMetaDataBuilder.java:154)
at org.jboss.ws.metadata.builder.jaxws.JAXWSServerMetaDataBuilder.setupProviderOrWebService(JAXWSServerMetaDataBuilder.java:50)
at org.jboss.ws.metadata.builder.jaxws.JAXWSMetaDataBuilderJSE.buildMetaData(JAXWSMetaDataBuilderJSE.java:61)
at org.jboss.wsf.stack.jbws.UnifiedMetaDataDeploymentAspect.start(UnifiedMetaDataDeploymentAspect.java:65)
at org.jboss.wsf.framework.deployment.DeploymentAspectManagerImpl.start(DeploymentAspectManagerImpl.java:144)
at org.jboss.wsf.container.jboss42.LazyAssemblyWSFRuntime.start(LazyAssemblyWSFRuntime.java:66)
at org.jboss.wsf.container.jboss42.JAXWSDeployerHookPostJSE.deploy(JAXWSDeployerHookPostJSE.java:52)
at org.jboss.wsf.container.jboss42.DeployerInterceptor.start(DeployerInterceptor.java:90)
at org.jboss.deployment.SubDeployerInterceptorSupport$XMBeanInterceptor.start(SubDeployerInterceptorSupport.java:188)
at org.jboss.deployment.SubDeployerInterceptor.invoke(SubDeployerInterceptor.java:95)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at $Proxy45.start(Unknown Source)
at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
at sun.reflect.GeneratedMethodAccessor21.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at $Proxy9.deploy(Unknown Source)
at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421)
at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:634)
at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263)
at org.jboss.deployment.scanner.AbstractDeploymentScanner.startService(AbstractDeploymentScanner.java:336)
at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
at org.jboss.system.ServiceMBeanSupport.jbossInternalLifecycle(ServiceMBeanSupport.java:245)
at sun.reflect.GeneratedMethodAccessor3.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.system.ServiceController$ServiceProxy.invoke(ServiceController.java:978)
at $Proxy0.start(Unknown Source)
at org.jboss.system.ServiceController.start(ServiceController.java:417)
at sun.reflect.GeneratedMethodAccessor9.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:86)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at $Proxy4.start(Unknown Source)
at org.jboss.deployment.SARDeployer.start(SARDeployer.java:304)
at org.jboss.deployment.MainDeployer.start(MainDeployer.java:1025)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:819)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:782)
at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:766)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.jboss.mx.interceptor.ReflectedDispatcher.invoke(ReflectedDispatcher.java:155)
at org.jboss.mx.server.Invocation.dispatch(Invocation.java:94)
at org.jboss.mx.interceptor.AbstractInterceptor.invoke(AbstractInterceptor.java:133)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.interceptor.ModelMBeanOperationInterceptor.invoke(ModelMBeanOperationInterceptor.java:142)
at org.jboss.mx.server.Invocation.invoke(Invocation.java:88)
at org.jboss.mx.server.AbstractMBeanInvoker.invoke(AbstractMBeanInvoker.java:264)
at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:659)
at org.jboss.mx.util.MBeanProxyExt.invoke(MBeanProxyExt.java:210)
at $Proxy5.deploy(Unknown Source)
at org.jboss.system.server.ServerImpl.doStart(ServerImpl.java:482)
at org.jboss.system.server.ServerImpl.start(ServerImpl.java:362)
at org.jboss.Main.boot(Main.java:200)
at org.jboss.Main$1.run(Main.java:508)
at java.lang.Thread.run(Thread.java:722)
Caused by: org.jboss.ws.WSException: Failed to create JAXBContext
at org.jboss.ws.core.jaxws.CustomizableJAXBContextFactory.createContext(CustomizableJAXBContextFactory.java:114)
at org.jboss.ws.metadata.builder.jaxws.JAXWSMetaDataBuilder.createJAXBContext(JAXWSMetaDataBuilder.java:949)
... 82 more
Caused by: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
java.lang.StackTraceElement does not have a no-arg default constructor.
this problem is related to the following location:
at java.lang.StackTraceElement
at public java.lang.StackTraceElement[] java.lang.Throwable.getStackTrace()
at java.lang.Throwable
at private java.lang.Throwable[] st.erpsapccn.bs.ip.admin.service.jaxws.IPWSExceptionBean.suppressed
at st.erpsapccn.bs.ip.admin.service.jaxws.IPWSExceptionBean
at com.sun.xml.bind.v2.runtime.IllegalAnnotationsException$Builder.check(IllegalAnnotationsException.java:102)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:438)
at com.sun.xml.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:286)
at com.sun.xml.bind.v2.ContextFactory.createContext(ContextFactory.java:139)
at com.sun.xml.bind.api.JAXBRIContext.newInstance(JAXBRIContext.java:105)
at org.jboss.ws.core.jaxws.CustomizableJAXBContextFactory.createContext(CustomizableJAXBContextFactory.java:108)
... 83 more
12:56:24,287 INFO [TomcatDeployer] deploy, ctxPath=/jmx-console, warUrl=.../deploy/jmx-console.war/
12:56:25,426 ERROR [URLDeploymentScanner] Incomplete Deployment listing:
--- Incompletely deployed packages ---
org.jboss.deployment.DeploymentInfo#f5e4ea04 { url=file:/software/jboss/jboss-4.2.3.GA/server/deploy/lb.war/ }
deployer: MBeanProxyExt[jboss.web:service=WebServer]
status: Deployment FAILED reason: Cannot build JAXB context
state: FAILED
watch: file:/software/jboss/jboss-4.2.3.GA/server/deploy/lb.war/WEB-INF/web.xml
altDD: null
lastDeployed: 1354692375941
lastModified: 1354610826000
mbeans:
jboss.web:j2eeType=Servlet,name=default,WebModule=//localhost/lb,J2EEApplication=none,J2EEServer=none (state not available)
jboss.web:j2eeType=Servlet,name=jsp,WebModule=//localhost/lb,J2EEApplication=none,J2EEServer=none (state not available)
jboss.web:j2eeType=Servlet,name=LBRefDataWS,WebModule=//localhost/lb,J2EEApplication=none,J2EEServer=none (state not available)
jboss.web:j2eeType=Servlet,name=AlternateLoginServlet,WebModule=//localhost/lb,J2EEApplication=none,J2EEServer=none (state not available)
jboss.web:j2eeType=Servlet,name=LBAdminWS,WebModule=//localhost/lb,J2EEApplication=none,J2EEServer=none (state not available)
jboss.web:j2eeType=Servlet,name=app,WebModule=//localhost/lb,J2EEApplication=none,J2EEServer=none (state not available)
jboss.web:j2eeType=Servlet,name=LBWS,WebModule=//localhost/lb,J2EEApplication=none,J2EEServer=none (state not available)
12:56:25,549 INFO [Http11Protocol] Starting Coyote HTTP/1.1 on http-dlhl0664.dlh.st.com%2F10.199.3.147-23920
12:56:25,608 INFO [AjpProtocol] Starting Coyote AJP/1.3 on ajp-dlhl0664.dlh.st.com%2F10.199.3.147-23921
12:56:25,623 INFO [Server] JBoss (MX MicroKernel) [4.2.3.GA (build: SVNTag=JBoss_4_2_3_GA date=200807181417)] Started in 44s:551ms
Maybe this link should be helpful for you:
http://leakfromjavaheap.blogspot.com/2013/03/jboss-422-ga-to-jdk-7-or-jdk-6-migration.html
"Two important clues from the stacktrace are made bold. After skimming through JBoss JIRA, I managed to find out that the problem was with JBossWS Native implementation: JIRA comment. There is the commit that solves the problem connected with the fact that getSuppressed() method was added to Throwable in JDK7. Everything was clear now, but our JBoss 4.2.2 GA works with JBossWS Native 3.0.1-native-2.0.4.GA. Upgrading WS provider to the jbossws-native-3.1.2 was not an option because of the risk. I decided to solve the problem in a different way. I downloaded the source code of the JBossWS Native 3.0.1-native-2.0.4.GA and I added the following line:
excludedGetters.add("getSuppressed");
to the org.jboss.ws.core.jaxws.AbstractWrapperGenerator class (as it is seen in the presented commit). Next, I compiled that class in isolation and I injected it into jbossws-core.jar. JBoss 4.2.2 GA started on JDK7 without any errors."
https://source.jboss.org/changelog/JBossWS?cs=16285&_sscc=t

Did OSX Java changes remove some ant functionally?

We have a cross platform application that is written in Java and built with an ant script. This code has not been built on the Mac since January of 2010. Recently I checked out the January 2010 version that built just fine to a fresh working copy and tried to build it and now I get this error:
BUILD FAILED
/Users/Mike/working copies/ASJTestBuild/trunk/build.xml:857: java.lang.NoClassDefFoundError: org/apache/xml/serialize/OutputFormat
at net.sourceforge.jarbundler.PropertyListWriter.writeFile(Unknown Source)
at net.sourceforge.jarbundler.JarBundler.writeInfoPlist(Unknown Source)
at net.sourceforge.jarbundler.JarBundler.execute(Unknown Source)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:390)
at org.apache.tools.ant.Target.performTasks(Target.java:411)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
at org.apache.tools.ant.Main.runBuild(Main.java:809)
at org.apache.tools.ant.Main.startAnt(Main.java:217)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
Caused by: java.lang.ClassNotFoundException: org.apache.xml.serialize.OutputFormat
at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1361)
at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1311)
at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:1064)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 19 more
Since this same code and same script built just fine 2 years ago and I know OSX handles their own version of Java I am wondering is it possible that some newer OSX version of Java removed this library that we are reliant upon?
Not ANT itself, but the JarBundler ANT task appears to have been broken by a relatively recent OS X Java release. Updating JarBundler should fix this.
(found here)

Categories

Resources