java.lang.UnsupportedOperationException
at java.util.Collections$UnmodifiableMap.put(Collections.java:1457)
at com.opensymphony.xwork2.config.entities.ResultTypeConfig$Builder.addParam(ResultTypeConfig.java:140)
at org.apache.struts2.convention.ConventionsServiceImpl.disableParse(ConventionsServiceImpl.java:127)
at org.apache.struts2.convention.ConventionsServiceImpl.getResultTypesByExtension(ConventionsServiceImpl.java:110)
at org.apache.struts2.convention.DefaultResultMapBuilder.build(DefaultResultMapBuilder.java:188)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.createActionConfig(PackageBasedActionConfigBuilder.java:951)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildConfiguration(PackageBasedActionConfigBuilder.java:734)
at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:355)
at org.apache.struts2.convention.ClasspathPackageProvider.loadPackages(ClasspathPackageProvider.java:53)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:274)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:67)
at org.apache.struts2.dispatcher.Dispatcher.getContainer(Dispatcher.java:967)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:435)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:479)
at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:74)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:57)
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:285)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:266)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4708)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5348)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1408)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1398)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
spring整合struts2,将action交给spring管理,在使用注解的时候发生了异常
java.lang.UnsupportedOperationException
Action如下
import org.apache.struts2.convention.annotation.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Controller;
import com.service.CustomerService;
@Controller()
//多例模式
@Scope("prototype")
@ParentPackage("struts-default")
@Namespace("/")
public class CustomerAction{
@Autowired
CustomerService customerService ;
@Action(value="addUI",results={
@Result(name="AddUI",type="dispatcher",location="/WEB-INF/jsp/customer/addUI.jsp")
})
public String AddUI(){
return "addUI";
}
public String ListUI(){
return "listUI";
}
/*
* 提供set方法,让spring注入
*/
public void setCustomerService(CustomerService customerService) {
this.customerService = customerService;
}
}
在经历n久的调试后发现,发现问题出现在@action注解上,不知道为什么,一旦使用@action,在启动tomcat时就会报java.lang.UnsupportedOperationException错误,只能放弃用注解来写action