2010-06-09 4 views
3

В шовной-ген генерируется приложение следующее исключение выбрасывается во время развертывания:Почему у меня есть зависимость от gwt?

ERROR [LoadMgr3] Not resheduling failed loading task, [email protected]{classname: org.jboss.seam.remoting.gwt.GWT14Service, requestingThread: Thread[ScannerThread,5,jboss], requestingClassLoader: [email protected]{ url=f 
ile:/C:/dev/jboss-4.3.0.GA/server/default/deploy/myapp.ear/ ,addedOrder=50}, loadedClass: nullnull, loadOrder: 2147483647, loadException: java.lang.NoClassDefFoundError: com/google/gwt/user/server/rpc/SerializationPolicyProvider, threadTaskCount: 0, state: 1, #CCE: 1} 
java.lang.NoClassDefFoundError: com/google/gwt/user/server/rpc/SerializationPolicyProvider 
     at java.lang.ClassLoader.defineClass1(Native Method) 
     at java.lang.ClassLoader.defineClass(ClassLoader.java:621) 
... 
     at org.jboss.deployment.scanner.URLDeploymentScanner.deploy(URLDeploymentScanner.java:421) 
     at org.jboss.deployment.scanner.URLDeploymentScanner.scan(URLDeploymentScanner.java:610) 
     at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.doScan(AbstractDeploymentScanner.java:263) 
     at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.loop(AbstractDeploymentScanner.java:274) 
     at org.jboss.deployment.scanner.AbstractDeploymentScanner$ScannerThread.run(AbstractDeploymentScanner.java:225) 

задача (и обходной путь) описывается here. Поскольку я не использую gwt, мой вопрос, почему у меня есть эта зависимость, когда я вообще не использую gwt?

Шов версия 2.1.2

EDIT: Только для записи: До другого решения не имеется, я добавил gwt-servlet.jar в файле deployed-jars-ear.list это удовлетворяет сканер развертывания.

ответ

1

Здесь вы можете увидеть цель Ant отвечает за копирование библиотеки, используемого Шов поколение

<target name="copy-lib" depends="copyseam, copyseamdependencies, copyjbossembedded, copy-icefaces-home, copy-icefaces-maven"> 
    <echo message="Copying Seam and dependencies to the ${project.home}/lib directory..."/> 

    <copy todir="${project.home}/lib" overwrite="true"> 
     <fileset dir="${seam.dir}/lib"> 
      <exclude name="jsf-facelets.jar" if="icefaces.property"/> 
      <exclude name="ajax4jsf*.jar" if="icefaces.property"/> 
      <exclude name="richfaces*.jar" if="icefaces.property"/> 
      <exclude name="jboss-container.jar"/> 
      <exclude name="jboss-seam-wicket.jar"/> 
      <exclude name="jboss-seam-resteasy.jar"/> 
      <exclude name="test/jboss-deplyers.jar"/> 
      <exclude name="test/jboss-embedded-api.jar"/> 
      <exclude name="interop/**/*"/> 
      <exclude name="gen/**/*"/> 
     </fileset> 
     <fileset file="${driver.jar}"/> 
    </copy> 

    <!-- we must use an endorsed jars directory containing JAXB 2.1 for running SeamTest under Java 6 --> 
    <copy todir="${project.home}/lib/endorsed" file="${seam.dir}/lib/gen/jaxb-api.jar" overwrite="true"/> 

    <echo message="Copying JBoss Embedded configuration to the ${project.home}/bootstrap directory..."/> 
    <copy todir="${project.home}/bootstrap" overwrite="true"> 
     <fileset dir="${seam.dir}/bootstrap"/> 
    </copy> 

</target> 

Обратите внимание, что это не исключает библиотеки GWT. Но насколько я знаю, Seam не зависит от Библиотека GWT. Таким образом, вы можете настроить свой собственный исключение. Here вы можете увидеть, как выглядит ваше приложение Seam.

build.xml файл Шов поколения использует расположен в

<SEAM_HOME> /seam-gen/build.xml

+0

Спасибо, но нет другого jar в каталоге lib, но gwt-servlet.jar, имя которого указывает, что оно может быть задействовано в этой проблеме , – stacker

+0

@stacker Вы видели комментарий Криса Бауэра: http://seamframework.org/Community/NoClassDefFoundExceptionOnGoogleSerializationPolicyProvider#comment72922 –

+0

@ arthur-ronald-fd-garcia благодарит его за то, что он зарегистрирован как DEBUG (включая исключение), и пользователь не должен беспокоиться , Теперь я расслаблен, и если у меня будет время, я узнаю, почему это выглядит как ошибка. – stacker

1

Похоже, что часть шва зависит только от классов от gwt-servlet.jar.

Ставка на то, что вы должны принять его как есть, и надеемся на очистку кода на стороне шва, потому что удивительно, что вам необходимо добавить «gwt» libs в ваш проект, даже если вы не используете gwt.

+0

спасибо за ваш ответ, вот чего я боялся. – stacker

+0

Мы все еще можем надеяться на другой ответ с решением, как избавиться от этой зависимости;) –

0

В самом деле, проверка на мой шов проекта, библиотека AWT является внутренним dependecie для некоторых граней модулей, вы просто должны быть уверены, чтобы добавить GWT-сервлет-2.3.0.jar к вашему

Project-ear.ear \ Project.war \ WEB-INF \ Lib

Смежные вопросы