JBoss5: невозможно развернуть из-за java.util.zip.ZipException: ошибка при открытии zip-файла

У меня есть веб-клиент и проект EJB, который я создал с помощью Eclipse 3.4. Когда я хочу развернуть его на Jboss 5.0.1, я получаю сообщение об ошибке ниже. Я много искал, но не смог найти решение этой проблемы.

18:21:21,899 INFO  [ServerImpl] Starting JBoss (Microcontainer)...
18:21:21,900 INFO  [ServerImpl] Release ID: JBoss [Morpheus] 5.0.1.GA (build: SVNTag=JBoss_5_0_1_GA date=200902231221)
18:21:21,900 INFO  [ServerImpl] Bootstrap URL: null
18:21:21,900 INFO  [ServerImpl] Home Dir: /Applications/jboss-5.0.1.GA
18:21:21,900 INFO  [ServerImpl] Home URL: file:/Applications/jboss-5.0.1.GA/
18:21:21,901 INFO  [ServerImpl] Library URL: file:/Applications/jboss-5.0.1.GA/lib/
18:21:21,901 INFO  [ServerImpl] Patch URL: null
18:21:21,901 INFO  [ServerImpl] Common Base URL: file:/Applications/jboss-5.0.1.GA/common/
18:21:21,902 INFO  [ServerImpl] Common Library URL: file:/Applications/jboss-5.0.1.GA/common/lib/
18:21:21,902 INFO  [ServerImpl] Server Name: default
18:21:21,902 INFO  [ServerImpl] Server Base Dir: /Applications/jboss-5.0.1.GA/server
18:21:21,902 INFO  [ServerImpl] Server Base URL: file:/Applications/jboss-5.0.1.GA/server/
18:21:21,902 INFO  [ServerImpl] Server Config URL: file:/Applications/jboss-5.0.1.GA/server/default/conf/
18:21:21,902 INFO  [ServerImpl] Server Home Dir: /Applications/jboss-5.0.1.GA/server/default
18:21:21,902 INFO  [ServerImpl] Server Home URL: file:/Applications/jboss-5.0.1.GA/server/default/
18:21:21,903 INFO  [ServerImpl] Server Data Dir: /Applications/jboss-5.0.1.GA/server/default/data
18:21:21,903 INFO  [ServerImpl] Server Library URL: file:/Applications/jboss-5.0.1.GA/server/default/lib/
18:21:21,903 INFO  [ServerImpl] Server Log Dir: /Applications/jboss-5.0.1.GA/server/default/log
18:21:21,903 INFO  [ServerImpl] Server Native Dir: /Applications/jboss-5.0.1.GA/server/default/tmp/native
18:21:21,903 INFO  [ServerImpl] Server Temp Dir: /Applications/jboss-5.0.1.GA/server/default/tmp
18:21:21,903 INFO  [ServerImpl] Server Temp Deploy Dir: /Applications/jboss-5.0.1.GA/server/default/tmp/deploy
18:21:22,669 INFO  [ServerImpl] Starting Microcontainer, bootstrapURL=file:/Applications/jboss-5.0.1.GA/server/default/conf/bootstrap.xml
18:21:23,535 INFO  [VFSCacheFactory] Initializing VFSCache [org.jboss.virtual.plugins.cache.CombinedVFSCache]
18:21:23,541 INFO  [VFSCacheFactory] Using VFSCache [CombinedVFSCache[real-cache: null]]
18:21:23,942 INFO  [CopyMechanism] VFS temp dir: /Applications/jboss-5.0.1.GA/server/default/tmp
18:21:23,943 INFO  [ZipEntryContext] VFS force nested jars copy-mode is enabled.
18:21:26,263 INFO  [ServerInfo] Java version: 1.5.0_16,Apple Inc.
18:21:26,264 INFO  [ServerInfo] Java Runtime: Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_16-b06-284)
18:21:26,264 INFO  [ServerInfo] Java VM: Java HotSpot(TM) Server VM 1.5.0_16-133,Apple Inc.
18:21:26,264 INFO  [ServerInfo] OS-System: Mac OS X 10.5.6,i386
18:21:26,336 INFO  [JMXKernel] Legacy JMX core initialized
18:21:30,432 INFO  [ProfileServiceImpl] Loading profile: default from: org.jboss.system.server.profileservice.repository.SerializableDeploymentRepository@e1d5d9(root=/Applications/jboss-5.0.1.GA/server, key=org.jboss.profileservice.spi.ProfileKey@143b82c3[domain=default,server=default,name=default])
18:21:30,436 INFO  [ProfileImpl] Using repository:org.jboss.system.server.profileservice.repository.SerializableDeploymentRepository@e1d5d9(root=/Applications/jboss-5.0.1.GA/server, key=org.jboss.profileservice.spi.ProfileKey@143b82c3[domain=default,server=default,name=default])
18:21:30,436 INFO  [ProfileServiceImpl] Loaded profile: ProfileImpl@ae002e{key=org.jboss.profileservice.spi.ProfileKey@143b82c3[domain=default,server=default,name=default]}
18:21:32,935 INFO  [WebService] Using RMI server codebase: http://localhost:8083/
18:21:42,572 INFO  [NativeServerConfig] JBoss Web Services - Stack Native Core
18:21:42,573 INFO  [NativeServerConfig] 3.0.5.GA
18:21:52,836 ERROR [AbstractKernelController] Error installing to ClassLoader: name=vfsfile:/Applications/jboss-5.0.1.GA/server/default/deploy/TwitterEAR.ear/ state=Describe mode=Manual requiredState=ClassLoader
org.jboss.deployers.spi.DeploymentException: Error creating classloader for vfsfile:/Applications/jboss-5.0.1.GA/server/default/deploy/TwitterEAR.ear/
    at org.jboss.deployers.spi.DeploymentException.rethrowAsDeploymentException(DeploymentException.java:49)
    at org.jboss.deployers.structure.spi.helpers.AbstractDeploymentContext.createClassLoader(AbstractDeploymentContext.java:576)
    at org.jboss.deployers.structure.spi.helpers.AbstractDeploymentUnit.createClassLoader(AbstractDeploymentUnit.java:159)
    at org.jboss.deployers.spi.deployer.helpers.AbstractClassLoaderDeployer.deploy(AbstractClassLoaderDeployer.java:53)
    at org.jboss.deployers.plugins.deployers.DeployerWrapper.deploy(DeployerWrapper.java:171)
    at org.jboss.deployers.plugins.deployers.DeployersImpl.doDeploy(DeployersImpl.java:1439)
    at org.jboss.deployers.plugins.deployers.DeployersImpl.doInstallParentFirst(DeployersImpl.java:1157)
    at org.jboss.deployers.plugins.deployers.DeployersImpl.install(DeployersImpl.java:1098)
    at org.jboss.dependency.plugins.AbstractControllerContext.install(AbstractControllerContext.java:348)
    at org.jboss.dependency.plugins.AbstractController.install(AbstractController.java:1598)
    at org.jboss.dependency.plugins.AbstractController.incrementState(AbstractController.java:934)
    at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:1062)
    at org.jboss.dependency.plugins.AbstractController.resolveContexts(AbstractController.java:984)
    at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:822)
    at org.jboss.dependency.plugins.AbstractController.change(AbstractController.java:553)
    at org.jboss.deployers.plugins.deployers.DeployersImpl.process(DeployersImpl.java:781)
    at org.jboss.deployers.plugins.main.MainDeployerImpl.process(MainDeployerImpl.java:698)
    at org.jboss.system.server.profileservice.ProfileServiceBootstrap.loadProfile(ProfileServiceBootstrap.java:304)
    at org.jboss.system.server.profileservice.ProfileServiceBootstrap.start(ProfileServiceBootstrap.java:205)
    at org.jboss.bootstrap.AbstractServerImpl.start(AbstractServerImpl.java:405)
    at org.jboss.Main.boot(Main.java:209)
    at org.jboss.Main$1.run(Main.java:547)
    at java.lang.Thread.run(Thread.java:613)
Caused by: java.lang.Error: Error visiting FileHandler@5567366[path=TwitterEAR.ear/TwitterPoCEJB.jar context=file:/Applications/jboss-5.0.1.GA/server/default/deploy/ real=file:/Applications/jboss-5.0.1.GA/server/default/deploy/TwitterEAR.ear/TwitterPoCEJB.jar/]
    at org.jboss.classloading.plugins.vfs.PackageVisitor.determineAllPackages(PackageVisitor.java:98)
    at org.jboss.deployers.vfs.plugins.classloader.VFSDeploymentClassLoaderPolicyModule.determineCapabilities(VFSDeploymentClassLoaderPolicyModule.java:108)
    at org.jboss.classloading.spi.dependency.Module.getCapabilities(Module.java:654)
    at org.jboss.classloading.spi.dependency.Module.determinePackageNames(Module.java:713)
    at org.jboss.classloading.spi.dependency.Module.getPackageNames(Module.java:698)
    at org.jboss.deployers.vfs.plugins.classloader.VFSDeploymentClassLoaderPolicyModule.determinePolicy(VFSDeploymentClassLoaderPolicyModule.java:129)
    at org.jboss.deployers.vfs.plugins.classloader.VFSDeploymentClassLoaderPolicyModule.determinePolicy(VFSDeploymentClassLoaderPolicyModule.java:48)
    at org.jboss.classloading.spi.dependency.policy.ClassLoaderPolicyModule.getPolicy(ClassLoaderPolicyModule.java:195)
    at org.jboss.deployers.vfs.plugins.classloader.VFSDeploymentClassLoaderPolicyModule.getPolicy(VFSDeploymentClassLoaderPolicyModule.java:122)
    at org.jboss.deployers.vfs.plugins.classloader.VFSDeploymentClassLoaderPolicyModule.getPolicy(VFSDeploymentClassLoaderPolicyModule.java:48)
    at org.jboss.classloading.spi.dependency.policy.ClassLoaderPolicyModule.registerClassLoaderPolicy(ClassLoaderPolicyModule.java:131)
    at org.jboss.deployers.plugins.classloading.AbstractLevelClassLoaderSystemDeployer.createClassLoader(AbstractLevelClassLoaderSystemDeployer.java:120)
    at org.jboss.deployers.structure.spi.helpers.AbstractDeploymentContext.createClassLoader(AbstractDeploymentContext.java:562)
    ... 21 more
Caused by: java.lang.RuntimeException: java.util.zip.ZipException: error in opening zip file
    at org.jboss.virtual.plugins.context.AbstractExceptionHandler.handleZipEntriesInitException(AbstractExceptionHandler.java:39)
    at org.jboss.virtual.plugins.context.helpers.NamesExceptionHandler.handleZipEntriesInitException(NamesExceptionHandler.java:63)
    at org.jboss.virtual.plugins.context.zip.ZipEntryContext.ensureEntries(ZipEntryContext.java:610)
    at org.jboss.virtual.plugins.context.zip.ZipEntryContext.checkIfModified(ZipEntryContext.java:757)
    at org.jboss.virtual.plugins.context.zip.ZipEntryContext.getChildren(ZipEntryContext.java:829)
    at org.jboss.virtual.plugins.context.zip.ZipEntryHandler.getChildren(ZipEntryHandler.java:159)
    at org.jboss.virtual.plugins.context.DelegatingHandler.getChildren(DelegatingHandler.java:121)
    at org.jboss.virtual.plugins.context.AbstractVFSContext.getChildren(AbstractVFSContext.java:211)
    at org.jboss.virtual.plugins.context.AbstractVFSContext.visit(AbstractVFSContext.java:328)
    at org.jboss.virtual.plugins.context.AbstractVFSContext.visit(AbstractVFSContext.java:298)
    at org.jboss.virtual.VFS.visit(VFS.java:433)
    at org.jboss.virtual.VirtualFile.visit(VirtualFile.java:437)
    at org.jboss.virtual.VirtualFile.getChildren(VirtualFile.java:386)
    at org.jboss.virtual.VirtualFile.getChildren(VirtualFile.java:367)
    at org.jboss.classloading.plugins.vfs.PackageVisitor.visit(PackageVisitor.java:200)
    at org.jboss.virtual.plugins.vfs.helpers.WrappingVirtualFileHandlerVisitor.visit(WrappingVirtualFileHandlerVisitor.java:62)
    at org.jboss.virtual.plugins.context.AbstractVFSContext.visit(AbstractVFSContext.java:353)
    at org.jboss.virtual.plugins.context.AbstractVFSContext.visit(AbstractVFSContext.java:298)
    at org.jboss.virtual.VFS.visit(VFS.java:433)
    at org.jboss.virtual.VirtualFile.visit(VirtualFile.java:437)
    at org.jboss.classloading.plugins.vfs.PackageVisitor.determineAllPackages(PackageVisitor.java:94)
    ... 33 more
Caused by: java.util.zip.ZipException: error in opening zip file
    at java.util.zip.ZipFile.open(Native Method)
    at java.util.zip.ZipFile.<init>(ZipFile.java:203)
    at java.util.zip.ZipFile.<init>(ZipFile.java:234)
    at org.jboss.virtual.plugins.context.zip.ZipFileWrapper.ensureZipFile(ZipFileWrapper.java:175)
    at org.jboss.virtual.plugins.context.zip.ZipFileWrapper.acquire(ZipFileWrapper.java:245)
    at org.jboss.virtual.plugins.context.zip.ZipEntryContext.initEntries(ZipEntryContext.java:470)
    at org.jboss.virtual.plugins.context.zip.ZipEntryContext.ensureEntries(ZipEntryContext.java:603)
    ... 51 more
18:21:56,772 INFO  [JMXConnectorServerService] JMX Connector server: service:jmx:rmi://localhost/jndi/rmi://localhost:1090/jmxconnector
18:21:56,959 INFO  [MailService] Mail Service bound to java:/Mail
18:21:59,450 WARN  [JBossASSecurityMetadataStore] WARNING! POTENTIAL SECURITY RISK. It has been detected that the MessageSucker component which sucks messages from one node to another has not had its password changed from the installation default. Please see the JBoss Messaging user guide for instructions on how to do this.
18:21:59,489 WARN  [AnnotationCreator] No ClassLoader provided, using TCCL: org.jboss.managed.api.annotation.ManagementComponent
18:21:59,789 INFO  [TransactionManagerService] JBossTS Transaction Service (JTA version) - JBoss Inc.
18:21:59,789 INFO  [TransactionManagerService] Setting up property manager MBean and JMX layer
18:22:00,040 INFO  [TransactionManagerService] Initializing recovery manager
18:22:00,160 INFO  [TransactionManagerService] Recovery manager configured
18:22:00,160 INFO  [TransactionManagerService] Binding TransactionManager JNDI Reference
18:22:00,184 INFO  [TransactionManagerService] Starting transaction recovery manager
18:22:01,243 INFO  [Http11Protocol] Initializing Coyote HTTP/1.1 on http-localhost%2F127.0.0.1-8080
18:22:01,244 INFO  [AjpProtocol] Initializing Coyote AJP/1.3 on ajp-localhost%2F127.0.0.1-8009
18:22:01,244 INFO  [StandardService] Starting service jboss.web
18:22:01,247 INFO  [StandardEngine] Starting Servlet Engine: JBoss Web/2.1.2.GA
18:22:01,336 INFO  [Catalina] Server startup in 161 ms
18:22:01,360 INFO  [TomcatDeployment] deploy, ctxPath=/invoker
18:22:02,014 INFO  [TomcatDeployment] deploy, ctxPath=/web-console
18:22:02,459 INFO  [TomcatDeployment] deploy, ctxPath=/jbossws
18:22:02,570 INFO  [RARDeployment] Required license terms exist, view vfszip:/Applications/jboss-5.0.1.GA/server/default/deploy/jboss-local-jdbc.rar/META-INF/ra.xml
18:22:02,586 INFO  [RARDeployment] Required license terms exist, view vfszip:/Applications/jboss-5.0.1.GA/server/default/deploy/jboss-xa-jdbc.rar/META-INF/ra.xml
18:22:02,645 INFO  [RARDeployment] Required license terms exist, view vfszip:/Applications/jboss-5.0.1.GA/server/default/deploy/jms-ra.rar/META-INF/ra.xml
18:22:02,663 INFO  [RARDeployment] Required license terms exist, view vfszip:/Applications/jboss-5.0.1.GA/server/default/deploy/mail-ra.rar/META-INF/ra.xml
18:22:02,705 INFO  [RARDeployment] Required license terms exist, view vfszip:/Applications/jboss-5.0.1.GA/server/default/deploy/quartz-ra.rar/META-INF/ra.xml
18:22:02,801 INFO  [SimpleThreadPool] Job execution threads will use class loader of thread: main
18:22:02,850 INFO  [QuartzScheduler] Quartz Scheduler v.1.5.2 created.
18:22:02,857 INFO  [RAMJobStore] RAMJobStore initialized.
18:22:02,858 INFO  [StdSchedulerFactory] Quartz scheduler 'DefaultQuartzScheduler' initialized from default resource file in Quartz package: 'quartz.properties'
18:22:02,858 INFO  [StdSchedulerFactory] Quartz scheduler version: 1.5.2
18:22:02,859 INFO  [QuartzScheduler] Scheduler DefaultQuartzScheduler_$_NON_CLUSTERED started.
18:22:03,888 INFO  [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=DataSourceBinding,name=DefaultDS' to JNDI name 'java:DefaultDS'
18:22:04,530 INFO  [ServerPeer] JBoss Messaging 1.4.1.GA server [0] started
18:22:04,624 INFO  [QueueService] Queue[/queue/DLQ] started, fullSize=200000, pageSize=2000, downCacheSize=2000
18:22:04,632 WARN  [ConnectionFactoryJNDIMapper] supportsFailover attribute is true on connection factory: jboss.messaging.connectionfactory:service=ClusteredConnectionFactory but post office is non clustered. So connection factory will *not* support failover
18:22:04,632 WARN  [ConnectionFactoryJNDIMapper] supportsLoadBalancing attribute is true on connection factory: jboss.messaging.connectionfactory:service=ClusteredConnectionFactory but post office is non clustered. So connection factory will *not* support load balancing
18:22:04,742 INFO  [ConnectionFactory] Connector bisocket://localhost:4457 has leasing enabled, lease period 10000 milliseconds
18:22:04,742 INFO  [ConnectionFactory] org.jboss.jms.server.connectionfactory.ConnectionFactory@6af9ad started
18:22:04,746 INFO  [QueueService] Queue[/queue/ExpiryQueue] started, fullSize=200000, pageSize=2000, downCacheSize=2000
18:22:04,747 INFO  [ConnectionFactory] Connector bisocket://localhost:4457 has leasing enabled, lease period 10000 milliseconds
18:22:04,747 INFO  [ConnectionFactory] org.jboss.jms.server.connectionfactory.ConnectionFactory@5ac953 started
18:22:04,750 INFO  [ConnectionFactory] Connector bisocket://localhost:4457 has leasing enabled, lease period 10000 milliseconds
18:22:04,750 INFO  [ConnectionFactory] org.jboss.jms.server.connectionfactory.ConnectionFactory@e8fa3a started
18:22:05,050 INFO  [ConnectionFactoryBindingService] Bound ConnectionManager 'jboss.jca:service=ConnectionFactoryBinding,name=JmsXA' to JNDI name 'java:JmsXA'
18:22:05,073 INFO  [TomcatDeployment] deploy, ctxPath=/
18:22:05,178 INFO  [TomcatDeployment] deploy, ctxPath=/jmx-console
18:22:05,290 ERROR [ProfileServiceBootstrap] Failed to load profile: Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR DETAILS):

DEPLOYMENTS IN ERROR:
  Deployment "vfsfile:/Applications/jboss-5.0.1.GA/server/default/deploy/TwitterEAR.ear/" is in error due to the following reason(s): java.util.zip.ZipException: error in opening zip file

18:22:05,301 INFO  [Http11Protocol] Starting Coyote HTTP/1.1 on http-localhost%2F127.0.0.1-8080
18:22:05,364 INFO  [AjpProtocol] Starting Coyote AJP/1.3 on ajp-localhost%2F127.0.0.1-8009
18:22:05,373 INFO  [ServerImpl] JBoss (Microcontainer) [5.0.1.GA (build: SVNTag=JBoss_5_0_1_GA date=200902231221)] Started in 43s:467ms

Упомянутый файл ear и war находится в каталоге deploy.

У кого-нибудь есть намеки?

24 ответа

Я видел это, когда FTP-файл с режимом передачи установлен в ASCII вместо двоичного файла.

Я получил очень похожую ошибку, и это было связано с количеством максимально открытых открытых файлов. Я запустил приложение после ulimit -n 8192, и оно смогло "разархивировать" файл.

Проблема, скорее всего, заключается в низкоуровневом формате ZIP-файла, возможно, в результате попытки JBoss развернуть частично загруженный архив,

Caused by: java.util.zip.ZipException: error in opening zip file
    at java.util.zip.ZipFile.open(Native Method)
    at java.util.zip.ZipFile.<init>(ZipFile.java:203)
    at java.util.zip.ZipFile.<init>(ZipFile.java:234

Если вы загружаете на сервер по медленной ссылке, попробуйте загрузить архив в каталог, который не отслеживается JBoss, затем переместите архив в каталог развертывания. Перемещение будет атомарной операцией или, по крайней мере, намного быстрее, чем загрузка.

Я разворачиваю архивы, выполняя команду rsyncing в ~/deploy-unit/, а затем запускаю удаленный скрипт через ssh, чтобы сделать последний шаг в каталог развертывания JBoss.

У меня была такая же проблема с "большим" EAR, развернутым через ANT с помощью задачи копирования. Кажется, что JBoss пытался распаковать его, прежде чем он был полностью скопирован. Я решил pb, используя задачу перемещения вместо копии (следя за тем, чтобы исходная папка для перемещения находилась в том же разделе диска)

Я решил эту проблему, запустив сервер с тем же JDK, который я использовал для компиляции / сборки EAR.

У меня была та же проблема, мое решение / проблема заключалась в том, что я добавил банку, которая вызывала проблему, как зависимость EE в моем EJB. Баночка была включена в файл EAR, но не была включена в соответствующий файл org.eclipse.wst.common.component. Я добавил зависимость в EAR-файл, и моя проблема была решена (по крайней мере, я думаю, у меня была проблема после выполнения этого с eclipse, но когда я ее решил, публикация прошла нормально).

Хорошо, я наконец нашел решение своей проблемы. Похоже, в Eclipse есть ошибка, препятствующая созданию файла.settings/org.eclipse.wst.common.component. Этот файл должен быть создан при настройке фасетов EJB3 и Java6 в свойствах проекта.

Вот пример файла org.eclipse.wst.common.component:

<?xml version="1.0" encoding="UTF-8"?>
<project-modules id="moduleCoreId" project-version="1.5.0">
    <wb-module deploy-name="project_name">
        <wb-resource deploy-path="/" source-path="/src/main/java"/>
        <wb-resource deploy-path="/" source-path="/src/main/resources"/>
        <wb-resource deploy-path="/" source-path="/src/test/java"/>
        <wb-resource deploy-path="/" source-path="/src/test/resources"/>
        <property name="java-output-path"/>
    </wb-module>
</project-modules>

Пути развертывания должны быть определены, чтобы можно было создать файл JAR EJB, используемый сервером при развертывании. После создания Jboss правильно публикует модуль EJB.

Я добавил ниже упомянутый код в web.xml под yourServletName и ошибка была удалена

<servlet-name>youServletName</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
 **<init-param>
  <param-name>contextClass</param-name>
  <param-value>org.jboss.spring.vfs.context.VFSXmlWebApplicationContext</param-value>
</init-param> 
<load-on-startup>2</load-on-startup>**
</servlet>

Иногда эти ошибки отображаются из-за того, что версия компиляции jar/ear отличается от версии jdk на сервере.

У меня была такая же проблема с JBoss 5.1.0.GA и Seam 2.1.1.GA. JDK - это java jdk1.6.0._07 для Eclipse 3.5 и JBoss.

Я смог решить проблему. Может быть, причина проблемы связана с вашим конкретным случаем, а может и нет, но в любом случае я подумала, что это может помочь.

Я создаю файл EAR приложения, используя файл сборки, который включен в примеры установки Seam; Мой сборочный файл - это модифицированная версия той, которая поставляется с примером бронирования. Этот файл сборки sampl включает в себя файл сборки, общий для всех примеров. Он предоставляет множество функций, которые вы можете использовать для создания своих дистрибутивных файлов.

Типичные примеры сборки предлагают несколько записей набора файлов и путей, которые вы можете переопределить, чтобы включить библиотеки, уникальные для вашего проекта.

Конкретно, я переопределял "build.classpath.extras" и "ear.lib.extras".

Я хотел включить определенную библиотеку в файл jar EJB, который упакован в файл EAR (файл jar, в котором находятся моя модель и классы действий); поэтому я просто переопределил "jar.extras" в моем файле сборки.

В то время, когда я страдал от этой проблемы. Хотя моя нужная библиотека в корневом каталоге была скопирована в корневую папку файла JAR EJB, по-видимому, без проблем, JBoss отбрасывала это сообщение об ошибке.

Поэтому я просто перестал использовать "jar.extras" и переместил ссылку на нужную библиотеку в "build.classpath.extras": эффект этого действия заключался в том, что библиотека была скопирована в папку \lib файла EAR, Теперь приложение, кажется, работает хорошо, и проблема исчезла.

Может быть, это ваша проблема с файлом web.xml, у меня тоже такая же проблема. После множества попыток я собирался пойти дальше и обсудил еще одну статью о web.xml и web-приложении 3.0. Это заставило меня задуматься, и я проверил свой web.xml. Конечно же, следующая строка была прямо там, наверху.

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">

Я переключился на 2.5 веб-приложения. И WAR, и EAR не будут развернуты.

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">

У меня была такая же проблема на моем Mac. Мой компьютер с операционной системой Windows (клиент на работе:-/) слишком медленный для запуска GateIN и затмения, поэтому я установил GateIN на свой Macbooc Pro и позволил затмению скопировать ему ухо при сборке. Я видел на консоли: исключение в zip.

Поэтому я решил выяснить, могу ли я открыть архив с помощью Stuffit Manager. В тот момент, когда я открыл его, очевидно, что файл каким-то образом "соприкоснулся", и сканер GateIN, обнаружив изменение, немедленно перенесся, на этот раз без ошибок. Поэтому я предполагаю, что Mac был слишком быстр, чтобы попытаться заново развернуть его до того, как ухо было полностью скопировано... Если у вас возникли проблемы, просто используйте команду touch...

У меня была такая же ошибка при развертывании войны, для меня это была проблема, связанная с извлечением архива wildfly с использованием опции 'z' в tar, я набрал

    tar -xvzf wildfly_v_.tar.gz

затем я удалил и переустановил все, кроме на этот раз с

    tar -xvf wildfly_v_.tar.gz 

после настройки я развернул, и проблема исчезла - я думаю, это была проблема, связанная с gzip

Я видел, что вложенные банки тоже это делают (баночка в другой банке или пустая баночка). В моем случае это был jar-драйвер для Microsoft SQL Server. Похоже, что OP - это TwitterPoCEJB.jar, если посмотреть на трассировку стека.

Есть много вещей, которые могут вызвать это, хотя, как упоминалось ранее, просто плохой почтовый индекс и т.д..

Если это проблема с вложенным jar-файлом, вы можете указать VFS, в каких местах находятся вложенные jar-файлы, хотя по умолчанию каталог./deploy является одним из них, поэтому все в порядке должно быть (если у вас нет jboss-{ }.xml явно настраивает вещи иначе).

Вы можете открыть файл ear вне JBoss (используя WinZip или WinRAR)? Возможно, файл zip поврежден.

Вы можете попробовать написать небольшую тестовую программу с использованием java.util.zip.ZipFile.open() и посмотреть, сможете ли вы отладить это в более изолированной ситуации.

Может ли это быть проблема с разрешениями? Я вижу, вы работаете под Mac OS. Когда вы успешно откроете файл EAR, от какого пользователя вы будете работать? Когда вы запускаете JBoss, от какого пользователя он запускается? Имеет ли он доступ для чтения к файлу?

У меня есть проблема, но это из-за того, что они находятся в веб-приложении. Когда Eclipse пытается развернуть веб-приложение на сервере dev tomcat, оно пытается разархивировать zip-файлы. Да, я унаследовал это веб-приложение. Теперь я постараюсь добавить его в фильтр, чтобы этого не случилось, пожелайте мне удачи.

Мы исправили эту проблему путем обновления с jdk1.6.0._06 до jdk1.6.0._26. Баночка была упакована с _26 и развернута там в JBoss 6.0. Тем не менее, наш клиент не может развернуть с _06. Надеюсь, это поможет!

У меня также есть это, но когда я добавляю maven-war-plugin и maven-ejb-plugin в мои проекты, все снова работает...

Я только что обнаружил, что если вы не укажете номер версии в плагине maven-war, он будет использовать какую-то альфа-версию. дать ему номер версии 2.0, для меня это сработало.

Попробуйте установить платформу веб-инструментов (WTP) из обновления eclipse... Я слышал, что произошла какая-то ошибка, вам потребуется версия 3.0.4. Я не могу найти ссылку, извините... надеюсь, это поможет!

Ну, я сталкиваюсь с той же проблемой в течение трех дней... посмотрите на ваш путь к классам для файлов с расширениями.rar или другого типа этих файлов, в моем случае я удаляю файл.rar из моего пути к классам, и все отлично работает.

У меня была та же проблема, с использованием JBoss 4.4.2 и созданием моего приложения с помощью maven-war-plugin (указав в качестве outputDirectory каталог JBoss deploy). Кажется, что JBoss пытается перезагрузить частично скопированную войну, потому что его ScannerThread активируется, пока maven все еще строит войну. Я частично решил увеличить время сканирования с 5000 мс (по умолчанию) до 15 с. Это не решает проблему, но, по крайней мере, это происходит реже!

   <!-- Frequency in milliseconds to rescan the URLs for changes -->
  <attribute name="ScanPeriod">15000</attribute>

У меня возникла именно эта проблема, и я обнаружил, что у меня есть поврежденные / пустые файлы jar в каталоге WEB-INF/lib. Как только я заменил каждый на хорошую копию, развертывание прошло без проблем.

Другие вопросы по тегам