Deployment fails with ZipException
----------------------------------
Key: SM-1217
URL: https://issues.apache.org/activemq/browse/SM-1217
Project: ServiceMix
Issue Type: Bug
Components: servicemix-core
Affects Versions: 3.2.2
Environment: Windows, Java 5, SM 3.2.2-SNAPSHOT
Reporter: Matt Pavlovich
Deployment fails to a running instance of ServiceMix. It appears as if SM is
trying to unzip a file before it is completely copied in place.
[ServiceMix output]
Starting Apache ServiceMix ESB: 3.2.2-SNAPSHOT
Loading Apache ServiceMix from servicemix.xml on the CLASSPATH
INFO - ConnectorServerFactoryBean - JMX connector available at:
service:jmx:rmi:///jndi/rmi://localhost:1099/jmxrmi
INFO - JBIContainer - ServiceMix 3.2.2-SNAPSHOT JBI
Container (ServiceMix) is starting
INFO - JBIContainer - For help or more informations please
see: http://incubator.apache.org/servicemix/
INFO - ComponentMBeanImpl - Initializing component:
#SubscriptionManager#
INFO - jetty - Logging to [EMAIL PROTECTED] via
org.apache.servicemix.http.jetty.JCLLogger
INFO - DeploymentService - Restoring service assemblies
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-bean to Started
INFO - ComponentMBeanImpl - Initializing component: servicemix-bean
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-camel to Started
INFO - ComponentMBeanImpl - Initializing component:
servicemix-camel
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-cxf-bc to Started
INFO - ComponentMBeanImpl - Initializing component:
servicemix-cxf-bc
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-cxf-se to Started
INFO - ComponentMBeanImpl - Initializing component:
servicemix-cxf-se
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-drools to Started
INFO - ComponentMBeanImpl - Initializing component:
servicemix-drools
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-eip to Started
INFO - ComponentMBeanImpl - Initializing component: servicemix-eip
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-file to Started
INFO - ComponentMBeanImpl - Initializing component: servicemix-file
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-ftp to Started
INFO - ComponentMBeanImpl - Initializing component: servicemix-ftp
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-http to Started
INFO - ComponentMBeanImpl - Initializing component: servicemix-http
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-jms to Started
INFO - ComponentMBeanImpl - Initializing component: servicemix-jms
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-jsr181 to Started
INFO - ComponentMBeanImpl - Initializing component:
servicemix-jsr181
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-lwcontainer to Started
INFO - ComponentMBeanImpl - Initializing component:
servicemix-lwcontainer
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-quartz to Started
INFO - ComponentMBeanImpl - Initializing component:
servicemix-quartz
1 name = quartz.properties
INFO - SimpleThreadPool - Job execution threads will use class
loader of thread: main
INFO - QuartzScheduler - Quartz Scheduler v.1.5.2 created.
INFO - RAMJobStore - RAMJobStore initialized.
INFO - StdSchedulerFactory - Quartz scheduler
'DefaultQuartzScheduler' initialized from default resource file in Quartz
package: 'quartz.properties'
INFO - StdSchedulerFactory - Quartz scheduler version: 1.5.2
INFO - QuartzScheduler - Scheduler
DefaultQuartzScheduler_$_NON_CLUSTERED started.
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-saxon to Started
INFO - ComponentMBeanImpl - Initializing component:
servicemix-saxon
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-script to Started
INFO - ComponentMBeanImpl - Initializing component:
servicemix-script
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-truezip to Started
INFO - ComponentMBeanImpl - Initializing component:
servicemix-truezip
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-wsn2005 to Started
INFO - ComponentMBeanImpl - Initializing component:
servicemix-wsn2005
INFO - ComponentMBeanImpl - Setting running state for Component:
servicemix-xmpp to Started
INFO - ComponentMBeanImpl - Initializing component: servicemix-xmpp
INFO - JBIContainer - ServiceMix JBI Container (ServiceMix)
started
INFO - JDBCAdapterFactory - Database driver recognized:
[apache_derby_embedded_jdbc_driver]
INFO - LogTask - Logging system reconfigured using
file:
file:/C:/sm-eclipse/workspace/ServiceMix/apache-servicemix-3.2.2-SNAPSHOT/conf/log4j.xml
INFO - AutoDeploymentService - Directory: hotdeploy: Archive changed:
processing sitews-sa-1.0.zip ...
WARN - AutoDeploymentService - Directory: hotdeploy: Automatic
install of
C:\sm-eclipse\workspace\ServiceMix\apache-servicemix-3.2.2-SNAPSHOT\hotdeploy\sitews-sa-1.0.zip
failed
javax.jbi.management.DeploymentException: <?xml version="1.0" encoding="UTF-8"?>
<jbi-task xmlns="http://java.sun.com/xml/ns/jbi/management-message"
version="1.0">
<jbi-task-result>
<frmwk-task-result>
<frmwk-task-result-details>
<task-result-details>
<task-id>deploy</task-id>
<task-result>FAILED</task-result>
<message-type>ERROR</message-type>
<task-status-msg>
<msg-loc-info>
<loc-token/>
<loc-message>Unable to unpack archive:
C:\sm-eclipse\workspace\ServiceMix\apache-servicemix-3.2.2-SNAPSHOT\hotdeploy\sitews-sa-1.0.zip</loc-message>
</msg-loc-info>
</task-status-msg>
<exception-info>
<nesting-level>1</nesting-level>
<loc-token/>
<loc-message>java.util.zip.ZipException: The process cannot access the file
because it is being used by another process</loc-message>
<stack-trace><![CDATA[javax.jbi.management.DeploymentException:
java.util.zip.ZipException: The process cannot access the file because it is
being used by another process
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.unpackLocation(AutoDeploymentService.java:595)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:228)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:647)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:60)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:611)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
Caused by: java.util.zip.ZipException: The process cannot access the file
because it is being used by another process
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.apache.servicemix.jbi.util.FileUtil.archiveContainsEntry(FileUtil.java:174)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.unpackLocation(AutoDeploymentService.java:587)
... 6 more
]]></stack-trace>
</exception-info>
</task-result-details>
</frmwk-task-result-details>
</frmwk-task-result>
</jbi-task-result>
</jbi-task>
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.failure(AutoDeploymentService.java:384)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.failure(AutoDeploymentService.java:374)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.updateArchive(AutoDeploymentService.java:230)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.monitorDirectory(AutoDeploymentService.java:647)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService.access$800(AutoDeploymentService.java:60)
at
org.apache.servicemix.jbi.framework.AutoDeploymentService$1.run(AutoDeploymentService.java:611)
at java.util.TimerThread.mainLoop(Timer.java:512)
at java.util.TimerThread.run(Timer.java:462)
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.