2013-07-06 90 views
1

**我目前的问题在下面列出,但我将在我如何到达那里**错误Web应用程序部署到GlassFish

我试图一个JSF Web应用程序部署到Glassfish的3细节。这里有一个关于我的项目的一些背景在任何情况下这些细节都是比我预期他们更相关:

  • 使用NetBeans 7.3.1
  • Java平台部署:JDK 1.7
  • Java EE版本:Java EE 6 Web
  • 使用ICEFaces组件v3.3。
  • 开发平台是MS Windows。
  • 使用Apache JENA和OWL API(包含所有库)。

我已经包含在项目中的以下ICEFaces的库:

  1. icefaces.jar
  2. icepush.jar
  3. ICEfaces的-ace.jar
  4. ICEfaces的-compat.jar
  5. common-logging.jar
  6. krysalis-jCharts-1.0.0-alpha-1.jar
  7. jxl.jar

当我第一次尝试部署我的应用程序,我收到以下异常:

javax.xml.transform.TransformerFactoryConfigurationError: Provider 
org.apache.xalan.processor.TransformerFactoryImpl not found at 
javax.xml.transform.TransformerFactory.newInstance(Unknown Source) 
at org.openide.xml.XMLUtil.write(XMLUtil.java:428) 

网页在这里读几响应以及之后,我继续加文件“xml-apis-1.4.01.jar”到GLASSFISH_HOME \ glassfish \ modules \ endorsed目录。在我的下一个部署的尝试,我收到以下异常:

Exception in thread "main" java.lang.reflect.InvocationTargetException 
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 com.sun.enterprise.glassfish.bootstrap.GlassFishMain.main(GlassFishMain.java:97) 
at com.sun.enterprise.glassfish.bootstrap.ASMain.main(ASMain.java:55) 
Caused by: javax.xml.stream.FactoryConfigurationError: Provider com.ctc.wstx.stax.WstxInputFactory not found 
at javax.xml.stream.XMLInputFactory.newInstance(Unknown Source) 

这促使我做更多的研究,并最终增加“stax2-API-3.1.1.jar”到GLASSFISH_HOME \ GlassFish的\ \模块endorsed目录。不幸的是,这是我的研究运气不足的地方。我现在收到以下异常:

WARNING: Failed to install file:GLASSFISH_HOME/glassfish/modules/endorsed/stax2-api-3.1.1.jar 
org.osgi.framework.BundleException: Bundle symbolic name and version are not unique: stax2-api:3.1.1 
at org.apache.felix.framework.BundleImpl.createRevision(BundleImpl.java:1230) 
at org.apache.felix.framework.BundleImpl.<init>(BundleImpl.java:95) 
at org.apache.felix.framework.Felix.installBundle(Felix.java:2732) 
at org.apache.felix.framework.BundleContextImpl.installBundle(BundleContextImpl.java:165) 
at com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner.install(BundleProvisioner.java:446) 
at com.sun.enterprise.glassfish.bootstrap.osgi.BundleProvisioner.installBundles(BundleProvisioner.java:208) 
at 
com.sun.enterprise.glassfish.bootstrap.osgi.OSGiGlassFishRuntimeBuilder.build(OSGiGlassFishRuntimeBuilder.java:139) 
at org.glassfish.embeddable.GlassFishRuntime._bootstrap(GlassFishRuntime.java:157) 
at org.glassfish.embeddable.GlassFishRuntime.bootstrap(GlassFishRuntime.java:110) 
at com.sun.enterprise.glassfish.bootstrap.GlassFishMain$Launcher.launch(GlassFishMain.java:112) 
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 com.sun.enterprise.glassfish.bootstrap.GlassFishMain.main(GlassFishMain.java:97) 
at com.sun.enterprise.glassfish.bootstrap.ASMain.main(ASMain.java:55) 

现在,我没有明确使用任何Woodstox部件在这个项目中,所以我在为什么Glassfish的需要这样的损失。起初,我以为我做错了,所以我继续前进,卸载并重新安装Glassfish实例并重新创建域。当我尝试部署项目时,仍然需要这个要求。

有什么建议吗?

一如既往,非常感谢您的帮助!

回答

1

所以在做了一堆更多的研究,并与设置玩弄,我想我已经解决了这个问题。首先,我的过程有一些背景。

因为我从来没有在我的项目中使用过Woodstox组件,所以我认为在我包含的库中有一个依赖于上述罐子。我想我会彻底删除Glassfish并重新安装以尝试“干净的石板”方法。不幸的是,这不起作用,我仍然有同样的例外。

我最终搜索了整个驱动器的Felix jar和目录,并删除了我能找到的所有东西。然后,我尝试重新启动Glassfish(预计)以一个错误结尾,说明Felix无法找到。然后我做了一个干净的卸载并重新安装,并且一切正常。我唯一的想法是有些东西被缓存了,而且没有被覆盖。

这纠正了我报告的最后一个异常,但不幸的是,我仍然经历过前者。我现在唯一的想法是(基于相当多的搜索),OWL库的XML解析器不能很好地与Glassfish配合使用。