java - Unable to load bean using Struts convention plugin -


i want use annotation based config instead of xml based. struts has convention plugin kind of thing.

so removed struts.xml file in main/resources, added plugin dependency, put annotations on actions , tried run project on server (tomcat 7).

when server starts, next stacktrace:

unable load configuration. - bean - jar:file:/d:/eclipseworkspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/shop/web-inf/lib/struts2-convention-plugin-2.3.24.jar!/struts-plugin.xml:32:155     @ com.opensymphony.xwork2.config.configurationmanager.getconfiguration(configurationmanager.java:70)     @ org.apache.struts2.dispatcher.dispatcher.getcontainer(dispatcher.java:967)     @ org.apache.struts2.dispatcher.dispatcher.init_preloadconfiguration(dispatcher.java:435)     @ org.apache.struts2.dispatcher.dispatcher.init(dispatcher.java:479)     @ org.apache.struts2.dispatcher.ng.initoperations.initdispatcher(initoperations.java:74)     @ org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter.init(strutsprepareandexecutefilter.java:57)     @ org.apache.catalina.core.applicationfilterconfig.initfilter(applicationfilterconfig.java:279)     @ org.apache.catalina.core.applicationfilterconfig.getfilter(applicationfilterconfig.java:260)     @ org.apache.catalina.core.applicationfilterconfig.<init>(applicationfilterconfig.java:105)     @ org.apache.catalina.core.standardcontext.filterstart(standardcontext.java:4854)     @ org.apache.catalina.core.standardcontext.startinternal(standardcontext.java:5546)     @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150)     @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1575)     @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1565)     @ java.util.concurrent.futuretask.run(futuretask.java:266)     @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142)     @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617)     @ java.lang.thread.run(thread.java:745) caused by: unable load bean: type:org.apache.struts2.convention.actionconfigbuilder class:org.apache.struts2.convention.packagebasedactionconfigbuilder - bean - jar:file:/d:/eclipseworkspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/shop/web-inf/lib/struts2-convention-plugin-2.3.24.jar!/struts-plugin.xml:32:155     @ com.opensymphony.xwork2.config.providers.xmlconfigurationprovider.register(xmlconfigurationprovider.java:247)     @ org.apache.struts2.config.strutsxmlconfigurationprovider.register(strutsxmlconfigurationprovider.java:102)     @ com.opensymphony.xwork2.config.impl.defaultconfiguration.reloadcontainer(defaultconfiguration.java:240)     @ com.opensymphony.xwork2.config.configurationmanager.getconfiguration(configurationmanager.java:67)     ... 17 more caused by: java.lang.noclassdeffounderror: com/opensymphony/xwork2/util/finder/defaultclassfinder     @ java.lang.class.getdeclaredconstructors0(native method)     @ java.lang.class.privategetdeclaredconstructors(class.java:2663)     @ java.lang.class.getdeclaredconstructors(class.java:2012)     @ com.opensymphony.xwork2.config.providers.xmlconfigurationprovider.register(xmlconfigurationprovider.java:237)     ... 20 more caused by: java.lang.classnotfoundexception: com.opensymphony.xwork2.util.finder.defaultclassfinder     @ org.apache.catalina.loader.webappclassloader.loadclass(webappclassloader.java:1720)     @ org.apache.catalina.loader.webappclassloader.loadclass(webappclassloader.java:1571)     ... 24 more  черв. 02, 2015 7:52:31 pm org.apache.catalina.core.standardcontext filterstart severe: exception starting filter struts2 unable load configuration. - bean - jar:file:/d:/eclipseworkspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/shop/web-inf/lib/struts2-convention-plugin-2.3.24.jar!/struts-plugin.xml:32:155     @ org.apache.struts2.dispatcher.dispatcher.init(dispatcher.java:493)     @ org.apache.struts2.dispatcher.ng.initoperations.initdispatcher(initoperations.java:74)     @ org.apache.struts2.dispatcher.ng.filter.strutsprepareandexecutefilter.init(strutsprepareandexecutefilter.java:57)     @ org.apache.catalina.core.applicationfilterconfig.initfilter(applicationfilterconfig.java:279)     @ org.apache.catalina.core.applicationfilterconfig.getfilter(applicationfilterconfig.java:260)     @ org.apache.catalina.core.applicationfilterconfig.<init>(applicationfilterconfig.java:105)     @ org.apache.catalina.core.standardcontext.filterstart(standardcontext.java:4854)     @ org.apache.catalina.core.standardcontext.startinternal(standardcontext.java:5546)     @ org.apache.catalina.util.lifecyclebase.start(lifecyclebase.java:150)     @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1575)     @ org.apache.catalina.core.containerbase$startchild.call(containerbase.java:1565)     @ java.util.concurrent.futuretask.run(futuretask.java:266)     @ java.util.concurrent.threadpoolexecutor.runworker(threadpoolexecutor.java:1142)     @ java.util.concurrent.threadpoolexecutor$worker.run(threadpoolexecutor.java:617)     @ java.lang.thread.run(thread.java:745) caused by: unable load configuration. - bean - jar:file:/d:/eclipseworkspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/shop/web-inf/lib/struts2-convention-plugin-2.3.24.jar!/struts-plugin.xml:32:155     @ com.opensymphony.xwork2.config.configurationmanager.getconfiguration(configurationmanager.java:70)     @ org.apache.struts2.dispatcher.dispatcher.getcontainer(dispatcher.java:967)     @ org.apache.struts2.dispatcher.dispatcher.init_preloadconfiguration(dispatcher.java:435)     @ org.apache.struts2.dispatcher.dispatcher.init(dispatcher.java:479)     ... 14 more caused by: unable load bean: type:org.apache.struts2.convention.actionconfigbuilder class:org.apache.struts2.convention.packagebasedactionconfigbuilder - bean - jar:file:/d:/eclipseworkspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/shop/web-inf/lib/struts2-convention-plugin-2.3.24.jar!/struts-plugin.xml:32:155     @ com.opensymphony.xwork2.config.providers.xmlconfigurationprovider.register(xmlconfigurationprovider.java:247)     @ org.apache.struts2.config.strutsxmlconfigurationprovider.register(strutsxmlconfigurationprovider.java:102)     @ com.opensymphony.xwork2.config.impl.defaultconfiguration.reloadcontainer(defaultconfiguration.java:240)     @ com.opensymphony.xwork2.config.configurationmanager.getconfiguration(configurationmanager.java:67)     ... 17 more caused by: java.lang.noclassdeffounderror: com/opensymphony/xwork2/util/finder/defaultclassfinder     @ java.lang.class.getdeclaredconstructors0(native method)     @ java.lang.class.privategetdeclaredconstructors(class.java:2663)     @ java.lang.class.getdeclaredconstructors(class.java:2012)     @ com.opensymphony.xwork2.config.providers.xmlconfigurationprovider.register(xmlconfigurationprovider.java:237)     ... 20 more caused by: java.lang.classnotfoundexception: com.opensymphony.xwork2.util.finder.defaultclassfinder     @ org.apache.catalina.loader.webappclassloader.loadclass(webappclassloader.java:1720)     @ org.apache.catalina.loader.webappclassloader.loadclass(webappclassloader.java:1571)     ... 24 more 

the thing struts has xwork-core dependency, lies in classpath, somehow tomcat can't find it. these dependencies pom.xml:

<dependencies>     <dependency>         <groupid>javax.servlet</groupid>         <artifactid>javax.servlet-api</artifactid>         <version>3.0.1</version>         <scope>provided</scope>     </dependency>     <dependency>         <groupid>javax.servlet</groupid>         <artifactid>jsp-api</artifactid>         <version>2.0</version>         <scope>provided</scope>     </dependency>     <dependency>         <groupid>javax.servlet</groupid>         <artifactid>jstl</artifactid>         <version>1.1.1</version>         <scope>runtime</scope>     </dependency>     <dependency>         <groupid>taglibs</groupid>         <artifactid>standard</artifactid>         <scope>runtime</scope>         <version>1.1.1</version>     </dependency>     <dependency>         <groupid>taglibs</groupid>         <artifactid>c</artifactid>         <version>1.1.1</version>         <scope>runtime</scope>         <type>tld</type>     </dependency>     <dependency>         <groupid>taglibs</groupid>         <artifactid>fmt</artifactid>         <version>1.1.1</version>         <scope>runtime</scope>         <type>tld</type>     </dependency>     <dependency>         <groupid>taglibs</groupid>         <artifactid>fn</artifactid>         <version>1.1.1</version>         <scope>runtime</scope>         <type>tld</type>     </dependency>     <!-- struts -->     <dependency>         <groupid>org.apache.struts</groupid>         <artifactid>struts2-core</artifactid>         <version>2.3.20</version>     </dependency>     <dependency>         <groupid>org.apache.struts</groupid>         <artifactid>struts2-convention-plugin</artifactid>         <version>2.3.24</version>     </dependency>     <dependency>         <groupid>com.opensymphony</groupid>         <artifactid>xwork</artifactid>         <version>2.1.3</version>     </dependency>     <dependency>         <groupid>mysql</groupid>         <artifactid>mysql-connector-java</artifactid>         <version>5.1.6</version>     </dependency>     <dependency>         <groupid>junit</groupid>         <artifactid>junit</artifactid>         <version>4.11</version>         <scope>test</scope>     </dependency>     <dependency>         <groupid>org.mockito</groupid>         <artifactid>mockito-all</artifactid>         <version>1.9.5</version>         <scope>test</scope>     </dependency>     <dependency>         <groupid>log4j</groupid>         <artifactid>log4j</artifactid>         <version>1.2.16</version>     </dependency>     <dependency>         <groupid>javax.mail</groupid>         <artifactid>mail</artifactid>         <version>1.4.7</version>         <scope>provided</scope>     </dependency>     <!-- front-end -->     <dependency>         <groupid>com.google.code.gson</groupid>         <artifactid>gson</artifactid>         <version>2.2.4</version>     </dependency>     <dependency>         <groupid>org.webjars</groupid>         <artifactid>jquery</artifactid>         <version>2.1.3</version>     </dependency>     <dependency>         <groupid>org.webjars</groupid>         <artifactid>datatables</artifactid>         <version>1.10.5</version>     </dependency>     <dependency>         <groupid>org.webjars</groupid>         <artifactid>mustachejs</artifactid>         <version>0.8.2</version>     </dependency>     <dependency>         <groupid>com.jgeppert.struts2.bootstrap</groupid>         <artifactid>struts2-bootstrap-plugin</artifactid>         <version>2.0.1</version>     </dependency> </dependencies> 

what did wrong?

if maven dependencies struts2-core has dependency on xwork-core, should downloaded when build app. diffrent versions of plug-ins make plugin stop working or breaks on startup. should use following artifacts

<dependency>     <groupid>org.apache.struts</groupid>     <artifactid>struts2-core</artifactid>     <version>2.3.24</version> </dependency> <dependency>     <groupid>org.apache.struts</groupid>     <artifactid>struts2-convention-plugin</artifactid>     <version>2.3.24</version> </dependency> 

Comments

Popular posts from this blog

python - TypeError: start must be a integer -

c# - DevExpress RepositoryItemComboBox BackColor property ignored -

django - Creating multiple model instances in DRF3 -