2013-07-06 115 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配合使用。