![Caused by: The Result type [json] which is defined in the Result annotation on the class Caused by: The Result type [json] which is defined in the Result annotation on the class](https://image.shishitao.com:8440/aHR0cHM6Ly9ia3FzaW1nLmlrYWZhbi5jb20vdXBsb2FkL2NoYXRncHQtcy5wbmc%2FIQ%3D%3D.png?!?w=700&webp=1)
1、错误描述
严重: Dispatcher initialization failed Unable to load configuration. - [unknown location] at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:70) 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.StrutsPrepareFilter.init(StrutsPrepareFilter.java:56) at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:279) at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:260) at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:105) at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4830) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5510) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1245) at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1895) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Caused by: The Result type [json] which is defined in the Result annotation on the class [class com.you.action.ColumnAction] or determined by the file extension or is the default result type for the PackageConfig of the action, could not be found as a result-type defined for the Struts/XWork package [com.you.action#struts-default#/column] - [unknown location] at org.apache.struts2.convention.DefaultResultMapBuilder.createResultConfig(DefaultResultMapBuilder.java:450) at org.apache.struts2.convention.DefaultResultMapBuilder.createFromAnnotations(DefaultResultMapBuilder.java:422) at org.apache.struts2.convention.DefaultResultMapBuilder.build(DefaultResultMapBuilder.java:200) at org.apache.struts2.convention.PackageBasedActionConfigBuilder.createActionConfig(PackageBasedActionConfigBuilder.java:926) at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildConfiguration(PackageBasedActionConfigBuilder.java:709) at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:348) 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) ... 21 more 三月 15, 2015 8:04:52 下午 org.apache.catalina.core.StandardContext filterStart 严重: Exception starting filter struts2 Unable to load configuration. - [unknown location] at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:493) at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:74) at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareFilter.init(StrutsPrepareFilter.java:56) at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:279) at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:260) at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:105) at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4830) at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5510) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649) at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1245) at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1895) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:745) Caused by: Unable to load configuration. - [unknown location] at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:70) 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) ... 18 more Caused by: The Result type [json] which is defined in the Result annotation on the class [class com.you.action.ColumnAction] or determined by the file extension or is the default result type for the PackageConfig of the action, could not be found as a result-type defined for the Struts/XWork package [com.you.action#struts-default#/column] - [unknown location] at org.apache.struts2.convention.DefaultResultMapBuilder.createResultConfig(DefaultResultMapBuilder.java:450) at org.apache.struts2.convention.DefaultResultMapBuilder.createFromAnnotations(DefaultResultMapBuilder.java:422) at org.apache.struts2.convention.DefaultResultMapBuilder.build(DefaultResultMapBuilder.java:200) at org.apache.struts2.convention.PackageBasedActionConfigBuilder.createActionConfig(PackageBasedActionConfigBuilder.java:926) at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildConfiguration(PackageBasedActionConfigBuilder.java:709) at org.apache.struts2.convention.PackageBasedActionConfigBuilder.buildActionConfigs(PackageBasedActionConfigBuilder.java:348) 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) ... 21 more 三月 15, 2015 8:04:52 下午 org.apache.catalina.core.StandardContext startInternal 严重: Error filterStart 三月 15, 2015 8:04:52 下午 org.apache.catalina.core.StandardContext startInternal 严重: Context [/SSH] startup failed due to previous errors 三月 15, 2015 8:04:52 下午 org.apache.catalina.loader.WebappClassLoader checkThreadLocalMapForLeaks 严重: The web application [/SSH] created a ThreadLocal with key of type [com.sun.faces.util.Util$1] (value [com.sun.faces.util.Util$1@3ea3f4a1]) and a value of type [java.util.HashMap] (value [{com.sun.faces.patternCache={ = }}]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak. 三月 15, 2015 8:04:52 下午 org.apache.catalina.startup.HostConfig deployDirectory
2、错误原因
/** * * @title:ColumnAction.java * @Package:com.you.action * @Description:<h3>一句话描述功能</h3> * @author:游海东 * @date:2015-3-15下午4:52:52 * @version V1.0 * */ package com.you.action; import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.Namespace; import org.apache.struts2.convention.annotation.ParentPackage; import org.apache.struts2.convention.annotation.Result; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Component; import org.springframework.stereotype.Controller; import com.opensymphony.xwork2.ActionSupport; import com.you.model.ColumnChart; import com.you.utils.RandomUtils; /** * * 项目名称:SSH * 类名称:ColumnAction * 类描述: * 创建人:游海东 * 创建时间:2015-3-15下午4:52:52 * 修改人:游海东 * 修改时间:2015-3-15下午4:52:52 * 修改备注: * @version V1.0 * */ @Component @Controller("columnAction") @Scope("prototype") @ParentPackage("struts-default") @Namespace("/column") public class ColumnAction extends ActionSupport { /** * * @Field:serialVersionUID * @Field_Type:long * @Field_Name:ColumnAction.java * */ private static final long serialVersionUID = 1L; /** * 图形 */ private ColumnChart cchart = new ColumnChart(); /** * @author YouHaidong * @date 2015-03-15 * @throws Exception * @return 字符串 */ @Override @Action(value="columnChart",results={@Result(name="success",type="json")}) public String execute() throws Exception { //调用图形方法 cchart = buildChart(); return SUCCESS; } /** * 形成柱状图 * 方法名:buildChart * 方法类型:ColumnAction * 参数:@return * @return:ColumnChart * @throws */ public ColumnChart buildChart() { ColumnChart chart = new ColumnChart(); for(int i=1;i<=12;i++) { chart.setLabel(i+"月"); chart.setValue(RandomUtils.findChart(i)); } return chart; } /** * @return the cChart */ public ColumnChart getCchart() { return cchart; } }
由于“@ParentPackage("struts-default")”是“struts-default”,而在Action中“@Action(value="columnChart",results={@Result(name="success",type="json")})”,写成type="json"
3、解决办法
/** * * @title:ColumnAction.java * @Package:com.you.action * @Description:<h3>一句话描述功能</h3> * @author:游海东 * @date:2015-3-15下午4:52:52 * @version V1.0 * */ package com.you.action; import org.apache.struts2.convention.annotation.Action; import org.apache.struts2.convention.annotation.Namespace; import org.apache.struts2.convention.annotation.ParentPackage; import org.apache.struts2.convention.annotation.Result; import org.springframework.context.annotation.Scope; import org.springframework.stereotype.Component; import org.springframework.stereotype.Controller; import com.opensymphony.xwork2.ActionSupport; import com.you.model.ColumnChart; import com.you.utils.RandomUtils; /** * * 项目名称:SSH * 类名称:ColumnAction * 类描述: * 创建人:游海东 * 创建时间:2015-3-15下午4:52:52 * 修改人:游海东 * 修改时间:2015-3-15下午4:52:52 * 修改备注: * @version V1.0 * */ @Component @Controller("columnAction") @Scope("prototype") @ParentPackage("struts-default") @Namespace("/column") public class ColumnAction extends ActionSupport { /** * * @Field:serialVersionUID * @Field_Type:long * @Field_Name:ColumnAction.java * */ private static final long serialVersionUID = 1L; /** * 图形 */ private ColumnChart cchart = new ColumnChart(); /** * @author YouHaidong * @date 2015-03-15 * @throws Exception * @return 字符串 */ @Override @Action(value="columnChart",results={@Result(name="success",location="/pages/columnChart.jsp")}) public String execute() throws Exception { //调用图形方法 cchart = buildChart(); return SUCCESS; } /** * 形成柱状图 * 方法名:buildChart * 方法类型:ColumnAction * 参数:@return * @return:ColumnChart * @throws */ public ColumnChart buildChart() { ColumnChart chart = new ColumnChart(); for(int i=1;i<=12;i++) { chart.setLabel(i+"月"); chart.setValue(RandomUtils.findChart(i)); } return chart; } /** * @return the cChart */ public ColumnChart getCchart() { return cchart; } }