xnpeng,

I think you are missing the point, packages have interceptor and
interceptor stack definitions. Actions live inside of packages. What
you need to do is move your conventions actions into your package. The
interceptor ref annotation will point to the stacks you want, but it
does no good if those interceptors are not defined in the package
where those actions live. To have your actions use your package,
change the configuration from -

<constant name="struts.convention.default.parent.package" value="rest-default"/>

to -

<constant name="struts.convention.default.parent.package" value="admin"/>

Then, conventions will put the actions in your package. Once this is
done, since you have a default-interceptor-ref in your package, the
interceptor ref annotations will no longer even be necessary.

-Wes

2009/5/27 xnpeng <xnp...@163.com>:
> Hi,
>  can some one help me? when i add annotation to my action,tomcat failed start.
>
> @InterceptorRefs({...@interceptorref("user"), 
> @InterceptorRef("defaultStack")})
> public class MainController extends MainAction {...}
> Caused by: Unable to find interceptor class referenced by ref-name user - 
> [unknown location]
>        at 
> com.opensymphony.xwork2.config.providers.InterceptorBuilder.constructInterceptorReference(InterceptorBuilder.java:
>        at 
> org.apache.struts2.convention.DefaultInterceptorMapBuilder.buildInterceptorList(DefaultInterceptorMapBuilder.java:
>        at 
> org.apache.struts2.convention.DefaultInterceptorMapBuilder.build(DefaultInterceptorMapBuilder.java:90)
>        at 
> org.apache.struts2.convention.DefaultInterceptorMapBuilder.build(DefaultInterceptorMapBuilder.java:63)
>        at 
> org.apache.struts2.convention.PackageBasedActionConfigBuilder.createActionConfig(PackageBasedActionConfigBuilder.j
>        at 
> org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildConfiguration(PackageBasedActionConfigBuilder.j
>        at 
> org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.j
>        at 
> org.apache.struts2.convention.ClasspathPackageProvider.loadPackages(ClasspathPackageProvider.java:52)
>        at 
> com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:200)
>        at 
> com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
>

-- 
Wes Wannemacher
Author - Struts 2 In Practice
Includes coverage of Struts 2.1, Spring, JPA, JQuery, Sitemesh and more
http://www.manning.com/wannemacher

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

Reply via email to