[ 
https://issues.apache.org/jira/browse/WW-3803?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13262069#comment-13262069
 ] 

Lukasz Lenart commented on WW-3803:
-----------------------------------

Right now:
{noformat}
Messages:       
File "/struts-tags" not found
File:   org/apache/jasper/compiler/DefaultErrorHandler.java
Line number:    51
{noformat}

{noformat}
org.apache.jasper.JasperException: File "/struts-tags" not found

    
org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:51)
    
org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:409)
    
org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:116)
    org.apache.jasper.compiler.TagLibraryInfoImpl.(TagLibraryInfoImpl.java:177)
    org.apache.jasper.compiler.Parser.parseTaglibDirective(Parser.java:386)
    org.apache.jasper.compiler.Parser.parseDirective(Parser.java:448)
    org.apache.jasper.compiler.Parser.parseElements(Parser.java:1398)
    org.apache.jasper.compiler.Parser.parse(Parser.java:130)
    
org.apache.jasper.compiler.ParserController.doParse(ParserController.java:255)
    org.apache.jasper.compiler.ParserController.parse(ParserController.java:103)
    org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:194)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:360)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:340)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:327)
    
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:607)
    
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:312)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:326)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:253)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:847)
    
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:329)
    
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)
    
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:840)
    
org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:622)
    
org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:560)
    
org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:488)
    
org.apache.struts2.dispatcher.ServletDispatcherResult.doExecute(ServletDispatcherResult.java:164)
    
org.apache.struts2.dispatcher.StrutsResultSupport.execute(StrutsResultSupport.java:186)
    
com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:369)
    
com.opensymphony.xwork2.DefaultActionInvocation.execute(DefaultActionInvocation.java:283)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)
    
org.apache.struts2.interceptor.debugging.DebuggingInterceptor.intercept(DebuggingInterceptor.java:256)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.interceptor.DefaultWorkflowInterceptor.doIntercept(DefaultWorkflowInterceptor.java:176)
    
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.validator.ValidationInterceptor.doIntercept(ValidationInterceptor.java:265)
    
org.apache.struts2.interceptor.validation.AnnotationValidationInterceptor.doIntercept(AnnotationValidationInterceptor.java:68)
    
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.interceptor.ConversionErrorInterceptor.intercept(ConversionErrorInterceptor.java:138)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:211)
    
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:211)
    
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:190)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
org.apache.struts2.interceptor.MultiselectInterceptor.intercept(MultiselectInterceptor.java:75)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
org.apache.struts2.interceptor.CheckboxInterceptor.intercept(CheckboxInterceptor.java:90)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
org.apache.struts2.interceptor.FileUploadInterceptor.intercept(FileUploadInterceptor.java:243)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.interceptor.ModelDrivenInterceptor.intercept(ModelDrivenInterceptor.java:100)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.interceptor.ScopedModelDrivenInterceptor.intercept(ScopedModelDrivenInterceptor.java:141)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.interceptor.ChainingInterceptor.intercept(ChainingInterceptor.java:145)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.interceptor.PrepareInterceptor.doIntercept(PrepareInterceptor.java:171)
    
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:176)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
org.apache.struts2.interceptor.ServletConfigInterceptor.intercept(ServletConfigInterceptor.java:164)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.interceptor.AliasInterceptor.intercept(AliasInterceptor.java:192)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    
com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor.intercept(ExceptionMappingInterceptor.java:187)
    
com.opensymphony.xwork2.DefaultActionInvocation.invokeNextInterceptor(DefaultActionInvocation.java:258)
    
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:237)
    org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)
    org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:511)
    
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)
    
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:91)
    
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280)
    
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)
    
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
    
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
    
org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
    
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155)
    
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
    org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)
    
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671)
    org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
    java.lang.Thread.run(Thread.java:680)
{noformat}    

                
> Convention Plugin treats struts.convention.package.locators as a part of 
> package name
> -------------------------------------------------------------------------------------
>
>                 Key: WW-3803
>                 URL: https://issues.apache.org/jira/browse/WW-3803
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Plugin - Convention
>    Affects Versions: 2.3.1, 2.3.1.1
>         Environment: JDK 6, JBoss AS 7.1.0 Final, Windows 7, Struts 2, EAR 
> deployment.
>            Reporter: nick
>            Assignee: Lukasz Lenart
>             Fix For: 2.3.4
>
>
> My struts.xml is as follows..
> {code:xml}
> <constant name="struts.devMode" value="true" />
>     <constant name="struts.configuration.xml.reload" value="true"/>
>     <constant name="struts.convention.exclude.parentClassLoader" value="true" 
> />   
>     <constant name="struts.convention.action.fileProtocols" 
> value="jar,vfsfile,vfszip,vfs,zip" />
>     <constant name="struts.convention.result.path" value="/WEB-INF/jsp/"/>
>     <constant name="struts.i18n.reload" value="false" />
>     <constant name="struts.locale" value="en_IN" />
>     <constant name="struts.multipart.maxSize" value="10485760" />
>     <constant name="struts.multipart.parser" value="jakarta"/>   
>     <constant name="struts.convention.action.mapAllMatches" value="true" />
>     <constant name="struts.convention.default.parent.package" value="egov" />
>     <!-- Comma separated list of regular expressions of jar URLs to be 
> scanned -->
>     <constant name="struts.convention.action.includeJars" value=".*egov-.*" />
>     <!-- Packages whose name ends with one of these strings will be scanned 
> for actions -->
>     <constant name="struts.convention.package.locators" value="actions"/>   
>     <!--
>         This makes the URL for an action like HelloWorldAction.java be 
> /helloWorld.action rather than /hello-world
>         By default Struts2 uses the SEOActionNameBuilder.
>     -->
>     <bean type="org.apache.struts2.convention.ActionNameBuilder" 
> name="defaultActionNameBuilder" 
> class="org.apache.struts2.convention.DefaultActionNameBuilder"/>
>     <constant name="struts.convention.actionNameBuilder" 
> value="defaultActionNameBuilder"/>
> ......
> {code}
> my action package structure is like  org.x.y.web.actions.transactions
> my jsp's are under WEB-INF/jsp/ transactions/
> I'm getting the following error
> {noformat}
> ERROR [com.opensymphony.xwork2.interceptor.ExceptionMappingInterceptor] 
> (http-localhost-127.0.0.1-9080-2) No result defined for action 
> org.x.y.web.actions.transactions.FirstAction and result new: No result 
> defined for actionorg.x.y.web.actions.transactions.FirstAction and result new
>     at 
> com.opensymphony.xwork2.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:376)
>  [xwork-core-2.3.1.jar:2.3.1]
>     at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:278)
>  [xwork-core-2.3.1.jar:2.3.1]
>     at 
> com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:100)
>  [xwork-core-2.3.1.jar:2.3.1]
>     at 
> com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:249)
>  [xwork-core-2.3.1.jar:2.3.1]
> {noformat}
> Its hitting FirstAction class method and returning string "new" 
> (first-new.jsp)
> My WEB-INF/jsp/ transactions/ folder has first-new.jsp.
> I guess this may be a bug in conventional-plugin
> i have commented  out <constant name="struts.convention.package.locators" 
> value="actions"/>   
> and tried it but it doesn't worked out.
> Then i have changed my package name from transactions to trns.........
> ie :
> my action package structure is like  org.x.y.web.actions.trns
> my jsp's are under WEB-INF/jsp/ trns/
>  there it goes, its working perfectly :) .
> i'm facing it when i use transactions as package name (Is it something to do 
> with trans"actions").
> even i guess this will be applicable for all package names starts or ends 
> with "actions"

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to