MyEclipse6.6中编译后遇到如下问题:
严重: Exception starting filter struts2
file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%206.0/webapps/Myacesys/WEB-INF/classes/struts.xml:18:11
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:835)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadDocuments(XmlConfigurationProvider.java:131)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.init(XmlConfigurationProvider.java:100)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:130)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452)
at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:201)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4363)
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:525)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:926)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:889)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
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:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: Attribute "name" is required and must be specified for element type "package". - file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%206.0/webapps/Myacesys/WEB-INF/classes/struts.xml:18:11
at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:123)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:830)
... 34 more
Caused by: org.xml.sax.SAXParseException: Attribute "name" is required and must be specified for element type "package".
at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.addDTDDefaultAttrsAndValidate(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.handleStartElement(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.startElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:121)
... 35 more
2009-8-28 16:11:58 org.apache.catalina.core.StandardContext filterStart
那位大虾帮忙解决一下,谢谢
严重: Exception starting filter struts2
file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%206.0/webapps/Myacesys/WEB-INF/classes/struts.xml:18:11
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:835)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadDocuments(XmlConfigurationProvider.java:131)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.init(XmlConfigurationProvider.java:100)
at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:130)
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52)
at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395)
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452)
at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:201)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)
at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)
at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4363)
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:525)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:926)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:889)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
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:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: Attribute "name" is required and must be specified for element type "package". - file:/C:/Program%20Files/Apache%20Software%20Foundation/Tomcat%206.0/webapps/Myacesys/WEB-INF/classes/struts.xml:18:11
at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:123)
at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadConfigurationFiles(XmlConfigurationProvider.java:830)
... 34 more
Caused by: org.xml.sax.SAXParseException: Attribute "name" is required and must be specified for element type "package".
at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.addDTDDefaultAttrsAndValidate(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.handleStartElement(Unknown Source)
at org.apache.xerces.impl.dtd.XMLDTDValidator.startElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanStartElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at com.opensymphony.xwork2.util.DomHelper.parse(DomHelper.java:121)
... 35 more
2009-8-28 16:11:58 org.apache.catalina.core.StandardContext filterStart
那位大虾帮忙解决一下,谢谢
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>com.ascent.util.SetCharacterEncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>struts-cleanup</filter-name>
<filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp</filter-class>
</filter>
<filter-mapping>
<filter-name>struts-cleanup</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>img</servlet-name>
<servlet-class>com.ascent.util.AuthImg</servlet-class>
</servlet> <servlet-mapping>
<servlet-name>img</servlet-name>
<url-pattern>/authImg</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>/index.jsp</welcome-file>
</welcome-file-list>
</web-app>文件如下:
package com.ascent.util;import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.UnavailableException;/**
* Example filter that sets the character encoding to be used in parsing the
* incoming request
*/
public class SetCharacterEncodingFilter implements Filter { /**
* Take this filter out of service.
*/
public void destroy() {
}
/**
* Select and set (if specified) the character encoding to be used to
* interpret request parameters for this request.
*/
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain)throws IOException, ServletException { request.setCharacterEncoding("gb2312"); // 传递控制到下一个过滤器
chain.doFilter(request, response);
} public void init(FilterConfig filterConfig) throws ServletException {
}
}
怎么修改?
<filter-name>Set Character Encoding </filter-name>
<filter-class>com.ascent.util.SetCharacterEncodingFilter </filter-class>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding </filter-name>
<url-pattern>/* </url-pattern>
</filter-mapping>
<filter>
<filter-name>struts-cleanup </filter-name>
<filter-class>org.apache.struts2.dispatcher.ActionContextCleanUp </filter-class>
</filter>
<filter-mapping>
<filter-name>struts-cleanup </filter-name>
<url-pattern>/* </url-pattern>
</filter-mapping>
这两个放最前面去
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd"><struts>
<package name="ascenttech" extends="json-default">
<action name="registCheckAction" class="com.ascent.action.RegistCheckAction">
<result type="json"></result>
</action>
<action name="registAction" class="com.ascent.action.RegistAction">
<result>/product/regist_succ.jsp</result>
<result name="error">/product/register.jsp</result>
</action>
<action name="productuserLoginAction" class="com.ascent.action.ProductuserLoginAction">
<result>/index.html</result>
<result name="success_1">/product/products.jsp</result>
<result name="success_2">/product/products.jsp</result>
<result name="success_3">/product/products_showusers.jsp</result>
<result name="error">/product/products.jsp</result>
<result name="input">/product/products.jsp</result>
</action>
<action name="*ProductuserManagerAction" class="com.ascent.action.ProductuserManagerAction" method="{1}">
<result></result>
<result name="show_productusers">/product/products_showusers.jsp</result>
<result name="updateproductuser">/product/updateproductuser.jsp</result>
<result name="updateproductuser_error">/product/updateproductuser.jsp</result>
<result name="changesuperuser_error">/product/changesuperuser.jsp</result>
<result name="error">/product/products.jsp</result>
<result name="admin_order_productuser">/product/admin_orderuser.jsp</result>
</action>
<action name="productIdCheckAction" class="com.ascent.action.ProductIdCheckAction">
<result type="json"></result>
</action>
<action name="*ProductManagerAction" class="com.ascent.action.ProductManagerAction" method="{1}">
<!-- 配置fileUpload拦截器 -->
<interceptor-ref name="fileUpload">
<!-- 设置上传文件类型 -->
<param name="allowedTypes">image/bmp,image/png,image/jpg,image/gif,application/vnd.ms-excel </param>
<!-- 设置上传文件大小 -->
<param name="maximumSize">200000</param>
</interceptor-ref>
<!-- 必须显示配置引用struts默认的拦截器栈:defaultStack -->
<interceptor-ref name="defaultStack"></interceptor-ref>
<!-- 设置上传路径 -->
<param name="savePath">/upload</param>
<result name="adminproductsshow">/product/admin_products_show.jsp</result>
<result name="saveOnesuccess">/product/admin_products_show.jsp</result>
<!-- 必须设置input逻辑视图,拦截器默认出错返回input -->
<result name="input">/product/upload_error.jsp</result>
<result name="updateProduct">/product/update_products_admin.jsp</result>
<result name="guestproductsshow">/product/products_show.jsp</result>
<result name="searchproductshow">/product/products_search_show.jsp</result>
<result name="userproducts">/product/userproducts_show.jsp</result>
<result name="index">/index.jsp</result>
<result name="productdetail">/product/productdetail.jsp</result>
</action>
<action name="*CartManagerAction" class="com.ascent.action.CartManagerAction" method="{1}">
<result name="cartshow">/product/cartshow.jsp</result>
</action>
<action name="*OrdersManagerAction" class="com.ascent.action.OrdersManagerAction" method="{1}">
<result name="checkoutsucc">/product/checkoutsucc.jsp</result>
<result name="ordershow">/product/ordershow.jsp</result>
<result name="adminordershow">/product/admin_ordershow.jsp</result>
</action>
<action name="*OrderitemManagerAction" class="com.ascent.action.OrderitemManagerAction" method="{1}">
<result name="orderitemshow">/product/orderitem_show.jsp</result>
</action>
<action name="*MailManagerAction" class="com.ascent.action.MailManagerAction" method="{1}">
<result name="addmailsucc">/product/mailmanager_succ.jsp</result>
<result name="addmailfail">/product/mailmanager_fail.jsp</result>
</action>
<action name="userProductAddAction" class="com.ascent.action.UserProductAddAction">
<result type="json"></result>
</action>
<action name="clearSession" class="com.ascent.action.ClearSessionAction">
<result>/index.jsp</result>
</action>
</package>
<constant name="struts.devMode" value="true"/>
<constant name="struts.custom.i18n.resources" value="properties/myMessages"/>
<constant name="struts.i18n.encoding" value="GBK"/>
<constant name="struts.multipart.parser" value="jakarta"/>
<constant name="struts.objectFactory.spring.autoWire" value="name"/>
</struts>