struts-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emi Lu <em...@encs.concordia.ca>
Subject Re: Action failed for Struts 2.3.15.3 GA release
Date Fri, 18 Oct 2013 20:23:13 GMT
On 10/18/2013 12:28 PM, Lukasz Lenart wrote:
> 2013/10/18 Emi Lu <emilu@encs.concordia.ca>:
>> Good morning,
>>
>>
>> Tried the new version15.3, but failed:
>>
>> login() method is not called at all.
>>
>> (1) login.jsp
>> ================
>> <s:submit value="Login"
>>            theme="simple"
>>            action="loginProcessLoginAction" />
>
> Struts 2.3.15.3 disables support for action: prefix by default [1], to
> enable it you must set struts.mapper.action.prefix.enabled to true.
> Instead action: you can use method: prefix (but you must enable
> struts.enable.DynamicMethodInvocation to true [2])
>
> [1] http://struts.apache.org/release/2.3.x/docs/s2-018.html
> [2] http://struts.apache.org/release/2.3.x/docs/s2-019.html

Thank you very much for your help! Here are what I tried:


(1) Success version (struts2.3.15.3 + tiles2.2.2 )

struts.xml
============
  <constant name="struts.enable.DynamicMethodInvocation" value="true"/>
  <constant name="struts.mapper.action.prefix.enabled"   value="true"/>

web.xml
=======
<listener-class>org.apache.struts2.tiles.StrutsTilesListener</listener-class>



(2) Failed version(struts2.3.15.3 + tiles3.0.1)
struts.xml
============
  <constant name="struts.enable.DynamicMethodInvocation" value="true"/>
  <constant name="struts.mapper.action.prefix.enabled"   value="true"/>

web.xml
=======
<listener-class>org.apache.tiles.extras.complete.CompleteAutoloadTilesListener</listener-class>


struts-login.xml
==================
<package name="Login" namespace="/Login" extends="tiles-default">
   <result-types>
     <result-type name="tiles" 
class="org.apache.struts2.views.tiles.TilesResult" />
    </result-types>


   <action name="*ProcessLoginAction"  method="{1}" 
class="ProcessLoginAction">
    <result name="success"   type="tiles">login_main_page</result>
    <result name="error"     type="tiles">login_main_page</result>

      <result name="main_menu" type="redirectAction">
          <param name="actionName">ProcessMenuAction</param>
             <param name="namespace">/Menu</param>
      </result>

       <result name="ajax_check">
              /WEB-INF/pages/errorinfo/ajax_error_check.jsp
       </result>
    </action>
    ......



 >> Got the following exception:
 >> ====================================
 >> java.lang.NoSuchMethodError: org.apache.tiles.access.**
 >> TilesAccess.getContainer(**Ljava/lang/Object;)Lorg/**
 >> apache/tiles/TilesContainer;
 >>          at org.apache.struts2.views.**tiles.TilesResult.doExecute(**
 >> TilesResult.java:100)
 >>          at 
org.apache.struts2.dispatcher.**StrutsResultSupport.execute(**
 >> StrutsResultSupport.java:186)

 >>          at com.opensymphony.xwork2.**DefaultActionInvocation.**
 >> executeResult(**DefaultActionInvocation.java:**371)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**275)
 >>          at org.apache.struts2.**interceptor.debugging.**
 >> DebuggingInterceptor.**intercept(**DebuggingInterceptor.java:256)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at com.opensymphony.xwork2.**interceptor.**
 >> DefaultWorkflowInterceptor.**doIntercept(**DefaultWorkflowInterceptor.**
 >> java:167)
 >>          at com.opensymphony.xwork2.**interceptor.**
 >> MethodFilterInterceptor.**intercept(**MethodFilterInterceptor.java:**98)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at 
com.opensymphony.xwork2.**validator.**ValidationInterceptor.**
 >> doIntercept(**ValidationInterceptor.java:**265)
 >>          at org.apache.struts2.**interceptor.validation.**
 >> AnnotationValidationIntercepto**r.doIntercept(**
 >> AnnotationValidationIntercepto**r.java:68)
 >>          at com.opensymphony.xwork2.**interceptor.**
 >> MethodFilterInterceptor.**intercept(**MethodFilterInterceptor.java:**98)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at com.opensymphony.xwork2.**interceptor.**
 >> ConversionErrorInterceptor.**intercept(**ConversionErrorInterceptor.**
 >> java:138)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at 
com.opensymphony.xwork2.**interceptor.**ParametersInterceptor.*
 >> *doIntercept(**ParametersInterceptor.java:**239)
 >>          at com.opensymphony.xwork2.**interceptor.**
 >> MethodFilterInterceptor.**intercept(**MethodFilterInterceptor.java:**98)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at 
com.opensymphony.xwork2.**interceptor.**ParametersInterceptor.*
 >> *doIntercept(**ParametersInterceptor.java:**239)
 >>          at com.opensymphony.xwork2.**interceptor.**
 >> MethodFilterInterceptor.**intercept(**MethodFilterInterceptor.java:**98)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at com.opensymphony.xwork2.**interceptor.**
 >> StaticParametersInterceptor.**intercept(**StaticParametersInterceptor.**
 >> java:191)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at org.apache.struts2.**interceptor.**MultiselectInterceptor.**
 >> intercept(**MultiselectInterceptor.java:**73)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at org.apache.struts2.**interceptor.**
 >> CheckboxInterceptor.intercept(**CheckboxInterceptor.java:91)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at org.apache.struts2.**interceptor.**FileUploadInterceptor.**
 >> intercept(**FileUploadInterceptor.java:**252)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at 
com.opensymphony.xwork2.**interceptor.**ModelDrivenInterceptor.
 >> **intercept(**ModelDrivenInterceptor.java:**100)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at com.opensymphony.xwork2.**interceptor.**
 >> 
ScopedModelDrivenInterceptor.**intercept(**ScopedModelDrivenInterceptor.**
 >> java:141)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at com.opensymphony.xwork2.**interceptor.**
 >> ChainingInterceptor.intercept(**ChainingInterceptor.java:145)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at 
com.opensymphony.xwork2.**interceptor.**PrepareInterceptor.**
 >> doIntercept(**PrepareInterceptor.java:171)
 >>          at com.opensymphony.xwork2.**interceptor.**
 >> MethodFilterInterceptor.**intercept(**MethodFilterInterceptor.java:**98)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at com.opensymphony.xwork2.**interceptor.I18nInterceptor.**
 >> intercept(I18nInterceptor.**java:161)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at 
org.apache.struts2.**interceptor.**ServletConfigInterceptor.**
 >> intercept(**ServletConfigInterceptor.java:**164)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at com.opensymphony.xwork2.**interceptor.AliasInterceptor.**
 >> intercept(AliasInterceptor.**java:193)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at com.opensymphony.xwork2.**interceptor.**
 >> ExceptionMappingInterceptor.**intercept(**ExceptionMappingInterceptor.**
 >> java:189)
 >>          at 
com.opensymphony.xwork2.**DefaultActionInvocation.**invoke(**
 >> DefaultActionInvocation.java:**246)
 >>          at org.apache.struts2.impl.**StrutsActionProxy.execute(**
 >> StrutsActionProxy.java:54)
 >>          at org.apache.struts2.dispatcher.**Dispatcher.serviceAction(**
 >> Dispatcher.java:563)
 >>          at org.apache.struts2.dispatcher.**ng.ExecuteOperations.**
 >> executeAction(**ExecuteOperations.java:77)
 >>          at org.apache.struts2.dispatcher.**ng.filter.**
 >> 
StrutsPrepareAndExecuteFilter.**doFilter(**StrutsPrepareAndExecuteFilter.*
 >> *java:99)
 >>          at org.apache.catalina.core.**ApplicationFilterChain.**
 >> internalDoFilter(**ApplicationFilterChain.java:**235)
 >>          at 
org.apache.catalina.core.**ApplicationFilterChain.**doFilter(**
 >> ApplicationFilterChain.java:**206)
 >>          at org.displaytag.filter.**ResponseOverrideFilter.**doFilter(**
 >> ResponseOverrideFilter.java:**125)
 >>          at org.apache.catalina.core.**ApplicationFilterChain.**
 >> internalDoFilter(**ApplicationFilterChain.java:**235)
 >>          at 
org.apache.catalina.core.**ApplicationFilterChain.**doFilter(**
 >> ApplicationFilterChain.java:**206)
 >>          at org.displaytag.filter.**ResponseOverrideFilter.**doFilter(**
 >> ResponseOverrideFilter.java:**125)
 >>          at org.apache.catalina.core.**ApplicationFilterChain.**
 >> internalDoFilter(**ApplicationFilterChain.java:**235)
 >>          at 
org.apache.catalina.core.**ApplicationFilterChain.**doFilter(**
 >> ApplicationFilterChain.java:**206)
 >>          at org.apache.catalina.core.**StandardWrapperValve.invoke(**
 >> StandardWrapperValve.java:233)
 >>          at org.apache.catalina.core.**StandardContextValve.invoke(**
 >> StandardContextValve.java:191)
 >>          at org.apache.catalina.core.**StandardHostValve.invoke(**
 >> StandardHostValve.java:127)
 >>          at org.apache.catalina.valves.**ErrorReportValve.invoke(**
 >> ErrorReportValve.java:103)
 >>          at org.apache.catalina.core.**StandardEngineValve.invoke(**
 >> StandardEngineValve.java:109)
 >>          at org.apache.catalina.connector.**CoyoteAdapter.service(**
 >> CoyoteAdapter.java:293)
 >>          at org.apache.coyote.http11.**Http11Processor.process(**
 >> Http11Processor.java:861)
 >>          at org.apache.coyote.http11.**Http11Protocol$**
 >> Http11ConnectionHandler.**process(Http11Protocol.java:**606)
 >>          at org.apache.tomcat.util.net.**JIoEndpoint$Worker.run(**
 >> JIoEndpoint.java:489)
 >>          at java.lang.Thread.run(Thread.**java:662)
 >>
 >> Could someone tell which jar missing please?
 >>


 >> Struts2.3.15.3  + tiles3.01.


Posted to tiles list as well.

The above exception shows when I did not load tiles*2.0.6.jars. If I 
load them, another exception will be shown.

Any help about how to fix the exception?

Thanks a lot!
Emi










---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@struts.apache.org
For additional commands, e-mail: user-help@struts.apache.org


Mime
View raw message