首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

SSH struts2添加jsonplugin-0.34时候出现有关问题

2012-03-14 
SSH struts2添加jsonplugin-0.34时候出现问题 - Web 开发 / Ajax严重: Dispatcher initialization failedU

SSH struts2添加jsonplugin-0.34时候出现问题 - Web 开发 / Ajax
严重: Dispatcher initialization failed
Unable to load configuration. - package - jar:file:/D:/webstudy/tomcat-6.0/webapps/struts2json/WEB-INF/lib/struts2-json-plugin-2.1.8.jar!/struts-plugin.xml:8:59
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:374)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:418)
at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:51)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:295)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:422)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:115)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3838)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4488)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:526)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1041)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:964)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:502)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1277)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:321)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:722)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:593)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
Caused by: The package name 'json-default' at location package - jar:file:/D:/webstudy/tomcat-6.0/webapps/struts2json/WEB-INF/lib/struts2-json-plugin-2.1.8.jar!/struts-plugin.xml:8:59 is already been used by another package at location package - jar:file:/D:/webstudy/tomcat-6.0/webapps/struts2json/WEB-INF/lib/jsonplugin-0.34.jar!/struts-plugin.xml:8:59 - package - jar:file:/D:/webstudy/tomcat-6.0/webapps/struts2json/WEB-INF/lib/struts2-json-plugin-2.1.8.jar!/struts-plugin.xml:8:59
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.addPackageConfig(DefaultConfiguration.java:113)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:475)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:264)
at org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:111)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:193)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)


... 31 more
2010-3-11 13:08:49 org.apache.catalina.core.StandardContext filterStart
Caused by: The package name 'json-default' at location package - jar:file:/D:/webstudy/tomcat-6.0/webapps/struts2json/WEB-INF/lib/struts2-json-plugin-2.1.8.jar!/struts-plugin.xml:8:59 is already been used by another package at location package - jar:file:/D:/webstudy/tomcat-6.0/webapps/struts2json/WEB-INF/lib/jsonplugin-0.34.jar!/struts-plugin.xml:8:59 - package - jar:file:/D:/webstudy/tomcat-6.0/webapps/struts2json/WEB-INF/lib/struts2-json-plugin-2.1.8.jar!/struts-plugin.xml:8:59
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.addPackageConfig(DefaultConfiguration.java:113)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:475)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:264)
at org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:111)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:193)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
... 31 more
2010-3-11 13:08:49 org.apache.catalina.core.StandardContext start
严重: Error filterStart
2010-3-11 13:08:49 org.apache.catalina.core.StandardContext start
严重: Context [/struts2json] startup failed due to previous errors
2010-3-11 13:08:49 org.apache.catalina.loader.WebappClassLoader clearThreadLocalMap
严重: A web application created a ThreadLocal with key of type [null] (value [com.sun.faces.config.ConfigureListener$1@9e8c34]) and a value of type [null] (value [null]) but failed to remove it when the web application was stopped. To prevent a memory leak, the ThreadLocal has been forcibly removed.
2010-3-11 13:08:49 org.apache.catalina.loader.WebappClassLoader clearThreadLocalMap
严重: A web application created a ThreadLocal with key of type [null] (value [com.opensymphony.xwork2.inject.ContainerImpl$10@106df95]) and a value of type [java.lang.Object[]] (value [[Ljava.lang.Object;@40afb9]) but failed to remove it when the web application was stopped. To prevent a memory leak, the ThreadLocal has been forcibly removed.


------struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
<package name="userop" extends="json-default">
<action name="loginAction" >
<result type="json"/>
</action>
</package>
</struts>  


--------action

package action;

import com.opensymphony.xwork2.ActionSupport;
import com.googlecode.jsonplugin.annotations.JSON;

import dao.UserManagerDao;

public class LoginAction extends ActionSupport {

private String username;
private String password;
private String hello;
private transient UserManagerDao userManagerDao;

public String getHello() {
return hello;
}

public void setHello(String hello) {
this.hello = hello;
}

public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}

public UserManagerDao getUserManagerDao() {
return userManagerDao;
}

public void setUserManagerDao(UserManagerDao userManagerDao) {
this.userManagerDao = userManagerDao;
}



public String execute(){



if(this.getUserManagerDao().checkLogin(this.getUsername(), this.getPassword())){
this.setHello("Hello a !!AJAX a!!");
return "success";
}

else
return "fail";
}
}


---------我struts2导入的包
json-lib-2.1.jar
struts2-convention-plugin-2.1.8.1.jar
struts2-json-plugin-2.1.8.1.jar
jsonplugin-0.34.jar
xwork-core-2.1.6.jar
struts2-core-2.1.8.jar等等

。。。。。。。。。。。。。。。。。
到底是什么问题呢?





[解决办法]
struts2-json-plugin-2.1.8.1.jar 中已经存在名为 json-default 的包名。 而jsonplugin中的struts-plugin.xml中的名字也叫 json-default 两者冲突,所以出错了。。 struts2.1.8 我没用过,你看一下这个struts2-json-plugin-2.1.8.1.jar 是不是就是struts2的json插件包,如果是这样的话,你就可以把 jsonplugin-0.34.jar 去掉了。。希望能对你有用。
[解决办法]
你可以参考一下 http://struts.apache.org/2.x/docs/json-plugin.html 对于struts2-json-plugin-2.1.8.1.jar有详细的介绍

热点排行