2017-04-13 18 views
1

私はtomcat 8.5.13とStruts 2.5.2で開発サーバーを実行しています。struts2 tomcat 8スタートアップ

私は2.5.10.1にストラットjarをアップグレードし、そして戦争が展開するとき、今、私はこのエラーを取得しています:私は、再起動時にTomcatのすべてがうまく働いていたので

2017-04-13 06:26:59.565|DEBUG|localhost-startStop-31|Creating revision for URL: jar:file:/usr/local/apache-tomcat-8.5.13/webapps/ROOT/WEB-INF/lib/struts2-core-2.5.10.1.jar!/struts-default.xml 
2017-04-13 06:26:59.578|DEBUG|localhost-startStop-31|Loaded action configuration from: struts-default.xml 
2017-04-13 06:26:59.578|DEBUG|localhost-startStop-31|Substituting value [     java.lang.Object,     java.lang.Runtime,     java.lang.System,     java.lang.Class,     java.lang.ClassLoader,     java.lang.Shutdown,     java.lang.ProcessBuilder,     ognl.OgnlContext,     ognl.ClassResolver,     ognl.TypeConverter,     ognl.MemberAccess,     ognl.DefaultMemberAccess,     com.opensymphony.xwork2.ognl.SecurityMemberAccess,     com.opensymphony.xwork2.ActionContext] using [com.opensymphony.xwork2.config.providers.EnvsValueSubstitutor] 
2017-04-13 06:26:59.578|DEBUG|localhost-startStop-31|Substituting value     java.lang.Object,     java.lang.Runtime,     java.lang.System,     java.lang.Class,     java.lang.ClassLoader,     java.lang.Shutdown,     java.lang.ProcessBuilder,     ognl.OgnlContext,     ognl.ClassResolver,     ognl.TypeConverter,     ognl.MemberAccess,     ognl.DefaultMemberAccess,     com.opensymphony.xwork2.ognl.SecurityMemberAccess,     com.opensymphony.xwork2.ActionContext with proper System variable or environment variable 
2017-04-12 19:59:30.243|ERROR|localhost-startStop-29|Dispatcher initialization failed 
    java.lang.NullPointerException: null 
     at java.util.Hashtable.put(Hashtable.java:459) ~[?:1.8.0_101] 
     at java.util.Properties.setProperty(Properties.java:166) ~[?:1.8.0_101] 
     at org.apache.commons.lang3.text.StrLookup.copyProperties(StrLookup.java:73) ~[commons-lang3-3.4.jar:3.4] 
     at org.apache.commons.lang3.text.StrLookup.systemPropertiesLookup(StrLookup.java:99) ~[commons-lang3-3.4.jar:3.4] 
     at org.apache.commons.lang3.text.StrSubstitutor.replaceSystemProperties(StrSubstitutor.java:231) ~[commons-lang3-3.4.jar:3.4] 
     at com.opensymphony.xwork2.config.providers.EnvsValueSubstitutor.substitute(EnvsValueSubstitutor.java:39) ~[struts2-core-2.5.10.1.jar:2.5.10.1] 
     at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.register(XmlConfigurationProvider.java:282) ~[struts2-core-2.5.10.1.jar:2.5.10.1] 
     at org.apache.struts2.config.StrutsXmlConfigurationProvider.register(StrutsXmlConfigurationProvider.java:98) ~[struts2-core-2.5.10.1.jar:2.5.10.1] 
     at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:165) ~[struts2-core-2.5.10.1.jar:2.5.10.1] 
     at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:67) ~[struts2-core-2.5.10.1.jar:2.5.10.1] 
     at org.apache.struts2.dispatcher.Dispatcher.getContainer(Dispatcher.java:906) ~[struts2-core-2.5.10.1.jar:2.5.10.1] 
     at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:445) ~[struts2-core-2.5.10.1.jar:2.5.10.1] 
     at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:486) [struts2-core-2.5.10.1.jar:2.5.10.1] 
     at org.apache.struts2.dispatcher.InitOperations.initDispatcher(InitOperations.java:75) [struts2-core-2.5.10.1.jar:2.5.10.1] 
     at org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:63) [struts2-core-2.5.10.1.jar:2.5.10.1] 
     at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:279) [catalina.jar:8.5.13] 
     at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:260) [catalina.jar:8.5.13] 
     at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:105) [catalina.jar:8.5.13] 
     at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4590) [catalina.jar:8.5.13] 
     at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5233) [catalina.jar:8.5.13] 
     at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) [catalina.jar:8.5.13] 
     at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752) [catalina.jar:8.5.13] 
     at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728) [catalina.jar:8.5.13] 
     at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734) [catalina.jar:8.5.13] 
     at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:952) [catalina.jar:8.5.13] 
     at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1823) [catalina.jar:8.5.13] 
     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:1.8.0_101] 
     at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:1.8.0_101] 
     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:1.8.0_101] 
     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:1.8.0_101] 
     at java.lang.Thread.run(Thread.java:745) [?:1.8.0_101] 

を、私は、これを解決したと思いました。しかし、再起動せずに新しいWARを移動すると、このエラーが発生する場合があります(毎回ではありません)。 Tomcatを再起動するたびに、フィルタが正常に起動します。私のstruts.xmlの定数は、次のとおりです。ここで

<constant name="struts.action.extension" value=",html" /> 
<constant name="struts.enable.SlashesInActionNames" value="true"/> 
<constant name="struts.mapper.alwaysSelectFullNamespace" value="false"/> 
<constant name="struts.patternMatcher" value="regex" /> 
<constant name="struts.ui.theme" value="css_xhtml" /> 

は、WEB-INF/libに

activation-1.1.jar 
aws-java-sdk-core-1.11.119.jar 
aws-java-sdk-kms-1.11.119.jar 
aws-java-sdk-s3-1.11.119.jar 
c3p0-0.9.1.1.jar 
commonj.sdo-2.1.1.jar 
commons-beanutils-1.9.2.jar 
commons-codec-1.9.jar 
commons-collections-3.2.2.jar 
commons-digester-1.8.1.jar 
commons-fileupload-1.3.2.jar 
commons-io-2.4.jar 
commons-lang-2.6.jar 
commons-lang3-3.4.jar 
commons-logging-1.2.jar 
commons-validator-1.6.jar 
eclipselink-2.6.4.jar 
freemarker-2.3.23.jar 
hamcrest-core-1.1.jar 
httpclient-4.5.3.jar 
httpcore-4.4.6.jar 
ion-java-1.0.2.jar 
jackson-annotations-2.6.6.jar 
jackson-core-2.6.6.jar 
jackson-databind-2.6.6.jar 
jackson-dataformat-cbor-2.6.6.jar 
javassist-3.20.0-GA.jar 
javax.json-1.0.4.jar 
javax.persistence-2.1.1.jar 
jaxwsapi-1.2.0.jar 
jmespath-java-1.11.119.jar 
joda-time-2.8.1.jar 
json-simple-1.1.1.jar 
junit-4.10.jar 
log4j-1.2.16.jar 
log4j-api-2.7.jar 
log4j-core-2.7.jar 
mail-1.4.7.jar 
mysql-connector-java-6.0.6.jar 
ognl-3.1.12.jar 
org.osgi.core-4.2.0.jar 
poi-3.13.jar 
quartz-2.2.3.jar 
slf4j-api-1.7.7.jar 
struts2-core-2.5.10.1.jar 
validation-api-1.1.0.Final.jar 
+0

struts.xmlファイルに 'constants'を表示します。 –

+0

libフォルダに追加されたファイルを提供してください。Richard –

+0

定数とlib jarの両方が質問に追加されています。これに関する助けを前にありがとう。 – RichardH

答えて

0

使用Mavenの、またはが必要と関連することを手動で確認してください下に、ライブラリ内のJARファイルですライブラリが整列されます。

Struts 2.5.10.1は、Struts 2.5.2の異なるライブラリバージョンを使用します。

あなたはofficial pom.xml on Githubでそれらを見つけることができます。

<struts2.springPlatformVersion>4.1.6.RELEASE</struts2.springPlatformVersion> 
<ognl.version>3.1.12</ognl.version> 
<asm.version>5.1</asm.version> 
<tiles.version>3.0.7</tiles.version> 
<tiles-request.version>1.0.6</tiles-request.version> 
<log4j2.version>2.8</log4j2.version> 

ものは2.5.11-SNAPSHOTで、現在のバージョン、のためのものです。

Browsing the History、あなたは、2.5.10.1log4jの代わりに2.8の2.7を持っていることがわかります(代わりに、3.5のコモンズ-lang3 3.4が、ちょうど最新のを使用します)。

ライブラリのバージョンを慎重に調整し、問題が残っている場合は、使用しているライブラリの詳細なリストを投稿してください。

0

私はまだこれで何が起こっていたのか分かりませんが、Tomcatを再起動して、すべて正常に動作しています。その前に、私はWARファイルをリロードしていました。

おかげで、

リチャード

0

は、Tomcat 8.5.16およびEclipseのバージョンとのストラット2.5.12のためのこれらのjarファイルのバージョンに使用:酸素放出(4.7.0)を、彼らはうまく働きました。

  • コモン・ファイルアップロード-1.3.3.jar
  • コモンズ-IO-2.4.jar
  • コモンズ-lang3-3.6.jar
  • FreeMarkerの-2.3.23.jar
  • javassist- 3.20.0-GA.jar
  • のlog4j-API-2.8.2.jar
  • log4jのコア-2.8.2.jar
  • OGNL-3.1.12.jar
  • struts2-core-2.5.12。jar

jarファイルのこのような配置が役立ちます。