linux - struts2 项目未在 tomcat7 中正确部署

标签 linux eclipse deployment struts2 tomcat7

我的项目在 eclipse 中运行完美。 但是当我将它的 war 文件导出到我的 linux 服务器上的 tomcat7 时,它并没有解压缩 war 文件。 即使在我手动完成后,它仍显示请求的资源不可用

另一个war文件也有同样的问题,但手动解压后就可以了。

我不确定是什么问题。

我的Web.xml是

 <?xml version="1.0" encoding="UTF-8"?>
    <web-app version="2.5" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>  
  <filter>
  <filter-name>struts2</filter-name>
  <filter-class>
        org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
  </filter>
  <filter-mapping>
  <filter-name>struts2</filter-name>
  <url-pattern>/*</url-pattern>
  </filter-mapping>
   <session-config>
         <session-timeout>-1</session-timeout>
 </session-config>
</web-app>

而我的struts.xml是

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration
2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
    <package name="" extends="struts-default">
        <action name="effort" class="EffortAction">
            <result name="success">index.jsp</result>
        </action>
        <action name="Finance_Report" class="EffortAction">
            <result name="success">Report.jsp</result>
        </action>
        <action name="Pivot" class="Downloads">
            <result name="success" type="stream">
                <param name="contentType">application/octet-stream</param>
                <param name="inputName">fileInputStream</param>
                <param name="contentDisposition">attachment;filename="Finance_Pivot.xls"</param>
                <param name="bufferSize">1024</param>
            </result>
        </action>       
    </package>
</struts> 

我使用的库文件是

commons-fileupload-1.3.1.jar
commons-io-2.2.jar
commons-lang-2.4.jar
commons-lang3-3.1.jar
commons-logging-1.1.3.jar
commons-logging-api-1.1.jar
freemarker-2.3.19.jar
javassist-3.11.0.GA.jar
ognl-3.0.6.jar
sqljdbc4.jar
struts2-core-2.3.16.1.jar
SX.jar
xwork-core-2.3.16.1.jar

我的 catalina.out 没有显示今天日期的任何内容。但在前一个日期显示了类似下面的内容。

INFO: Undeploying context [/FinanceReport]
May 27, 2014 1:42:48 PM org.apache.catalina.loader.WebappClassLoader clearReferencesJdbc
SEVERE: The web application [/FinanceReport] registered the JDBC driver [com.microsoft.sqlserver.jdbc.SQLServerDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
May 27, 2014 1:42:48 PM org.apache.catalina.loader.WebappClassLoader checkThreadLocalMapForLeaks
SEVERE: The web application [/FinanceReport] created a ThreadLocal with key of type [java.lang.ThreadLocal] (value [java.lang.ThreadLocal@18a2c34]) and a value of type [com.opensymphony.xwork2.inject.ContainerImpl] (value [com.opensymphony.xwork2.inject.ContainerImpl@1feb1c3]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.
May 27, 2014 1:42:48 PM org.apache.catalina.loader.WebappClassLoader checkThreadLocalMapForLeaks
SEVERE: The web application [/FinanceReport] created a ThreadLocal with key of type [com.microsoft.sqlserver.jdbc.ActivityCorrelator$1] (value [com.microsoft.sqlserver.jdbc.ActivityCorrelator$1@1bd63cb]) and a value of type [com.microsoft.sqlserver.jdbc.ActivityId] (value [66662bbe-1458-4ce9-b739-16fd806f8c7a-2]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.
Exception in thread "ContainerBackgroundProcessor[StandardEngine[Catalina]]" java.lang.InternalError: Malformed class name
    at java.lang.Class.getSimpleName(Class.java:1317)
    at java.lang.Class.getCanonicalName(Class.java:1386)
    at org.apache.catalina.loader.WebappClassLoader.getPrettyClassName(WebappClassLoader.java:2601)
    at org.apache.catalina.loader.WebappClassLoader.checkThreadLocalMapForLeaks(WebappClassLoader.java:2571)
    at org.apache.catalina.loader.WebappClassLoader.checkThreadLocalsForLeaks(WebappClassLoader.java:2507)
    at org.apache.catalina.loader.WebappClassLoader.clearReferences(WebappClassLoader.java:2013)
    at org.apache.catalina.loader.WebappClassLoader.stop(WebappClassLoader.java:1908)
    at org.apache.catalina.loader.WebappLoader.stopInternal(WebappLoader.java:661)
    at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
    at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5702)
    at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
    at org.apache.catalina.core.ContainerBase.removeChild(ContainerBase.java:1028)
    at org.apache.catalina.startup.HostConfig.undeploy(HostConfig.java:1478)
    at org.apache.catalina.startup.HostConfig.checkResources(HostConfig.java:1406)
    at org.apache.catalina.startup.HostConfig.check(HostConfig.java:1626)
    at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:328)
    at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
    at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
    at org.apache.catalina.core.ContainerBase.backgroundProcess(ContainerBase.java:1374)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1530)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.processChildren(ContainerBase.java:1540)
    at org.apache.catalina.core.ContainerBase$ContainerBackgroundProcessor.run(ContainerBase.java:1519)
    at java.lang.Thread.run(Thread.java:745)

我已经在 stackoverflow 下检查过类似的问题,但我无法弄清楚我的情况出了什么问题。

最佳答案

我找到了解决方法。

我已经删除了war文件和我手动创建的文件夹,然后重新启动了服务器。现在我再次部署了 war ,它奏效了。但是我不确定之前阻止我的原因是什么。

希望这对某人有帮助。

关于linux - struts2 项目未在 tomcat7 中正确部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23904474/

相关文章:

deployment - JBoss AS 7 部署顺序和时间

linux - 在 Linux/Xorg 上设置颜色亮度

java - 为什么我不能在 Java 中使用 ProcessBuilder 启动 `bash -i`?

java - Android Eclipse 多个 Dex 文件错误

reactjs - 更改 nginx 默认文件夹

deployment - 如何将中间人站点部署到 GitHub 用户页面

linux - 如何找到包含少量特定字符串但不一定在同一行的所有文件?

linux - 将目录更改为参数(如果给定) - Bash 脚本

eclipse - 在 Eclipse 中打开最后一个关闭的文件的快捷方式?

java - 有没有办法生成所有类/方法的列表(没有实现)并使用 eclipse 保存为文本文件?