在OpenShift

时间:2017-03-29 14:39:09

标签: java tomcat7 openshift zipfile

我试图在Tomcat7服务器卡式磁带上的OpenShift上部署一个简单的Java Web应用程序。

我使用默认名称ROOT.war在/ app-root / runtime / dependencies / jbossews / webapps应用程序路径上使用FileZilla进行了sftp,并且复制过程成功结束。

Openshift会自动尝试部署战争,但会发生ZipException(然后,每次我从该应用程序的OpenShift在线控制台手动重启它,即使显示以下消息:"应用程序xxxxxx已重新启动& #34;。)

以下是从我的应用程序的Openshift日志中复制的例外情况:

  

2017年3月26日上午11:39:00 org.apache.catalina.startup.HostConfig undeploy

     

信息:取消部署上下文[]

     

2017年3月26日上午11:39:01 org.apache.catalina.startup.HostConfig deployWAR

     

信息:部署Web应用程序存档/var/lib/openshift/xxxxxxxxxxxxxxxxxxxxxxxx/app-root/runtime/dependencies/jbossews/webapps/ROOT.war

     

2017年3月26日上午11:39:01 org.apache.catalina.startup.ContextConfig beforeStart

     

严重:异常修复docBase for context []

     

java.util.zip.ZipException:打开zip文件时出错

     

at java.util.zip.ZipFile.open(Native Method)

     

在java.util.zip.ZipFile上。      

在java.util.zip.ZipFile上。      

在java.util.jar.JarFile上。      

在java.util.jar.JarFile上。      

在sun.net.www.protocol.jar.URLJarFile。      

在sun.net.www.protocol.jar.URLJarFile.getJarFile(URLJarFile.java:69)

     

at sun.net.www.protocol.jar.JarFileFactory.get(JarFileFactory.java:99)

     

at sun.net.www.protocol.jar.JarURLConnection.connect(JarURLConnection.java:122)

     

at sun.net.www.protocol.jar.JarURLConnection.getJarFile(JarURLConnection.java:89)

     

at org.apache.catalina.startup.ExpandWar.validate(ExpandWar.java:220)

     

at org.apache.catalina.startup.ContextConfig.fixDocBase(ContextConfig.java:732)

     

at org.apache.catalina.startup.ContextConfig.beforeStart(ContextConfig.java:850)

     

at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:376)

     

at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)

     

at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)

     

at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:402)

     

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)

     

at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)

     

at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)

     

at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)

     

at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)

     

at org.apache.catalina.startup.HostConfig $ DeployWar.run(HostConfig.java:1880)

     

at java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:473)

     

at java.util.concurrent.FutureTask.run(FutureTask.java:262)

     

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

     

at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:615)

     

在java.lang.Thread.run(Thread.java:745)

     

2017年3月26日上午11:39:01 org.apache.catalina.core.StandardContext resourcesStart

     

SEVERE:启动静态资源时出错

     

java.lang.IllegalArgumentException:无效或不可读的WAR文件:打开zip文件时出错

     

at org.apache.naming.resources.WARDirContext.setDocBase(WARDirContext.java:136)

     

at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:5089)

     

at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5269)

     

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)

     

at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)

     

at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)

     

at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)

     

at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)

     

at org.apache.catalina.startup.HostConfig $ DeployWar.run(HostConfig.java:1880)

     

at java.util.concurrent.Executors $ RunnableAdapter.call(Executors.java:473)

     

at java.util.concurrent.FutureTask.run(FutureTask.java:262)

     

at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

     

at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:615)

     

在java.lang.Thread.run(Thread.java:745)

     

2017年3月26日上午11:39:01 org.apache.catalina.core.ContainerBase addChildInternal

     

SEVERE:ContainerBase.addChild:start:

     

org.apache.catalina.LifecycleException:无法启动组件[StandardEngine [Catalina] .StandardHost [localhost] .StandardContext []]

     

at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)

     

at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)

     

at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)

     

at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:632)

     

at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1083)

     

at org.apache.catalina.startup.HostConfig $ DeployWar.run(HostConfig.java:1880)

浏览网页时,我发现了类似的问题,并检查了他们的答案,但似乎没有任何效果:

  • 我已经检查过war文件,当重命名为.zip时,WinRar正确打开,没有任何问题。

  • 我在复制后检查了服务器中war文件的权限,并将它们设置为777.重新启动服务器但问题仍然存在。

  • 我在那里复制了另一个应用程序的战争,并由OpenShift的tomcat自动部署。

  • 我已将我的war文件发送给同事,该同事可以将其部署在本地Tomcat7服务器上,没有任何问题。

有什么想法吗?提前谢谢!

0 个答案:

没有答案