本个现在是通过weblogic8.1进行发布一个由两个项目整合成一个项目系统.其中一个是使用struts2,另一个是使用struts1的项目,
整合时,spring是用的两个各自的配置,现在发布总是报以下错误:
log4j:WARN Please initialize the log4j system properly.
<2009-5-27 下午08时34分09秒 CST> <Error> <HTTP> <BEA-101216> <Servlet: "action"
failed to preload on startup in Web application: "ds_admin".
javax.servlet.UnavailableException: Invalid encoding name "GBK".
        at org.apache.struts.action.ActionServlet.init(ActionServlet.java:368)
        at javax.servlet.GenericServlet.init(GenericServlet.java:258)
        at weblogic.servlet.internal.ServletStubImpl$ServletInitAction.run(Servl
etStubImpl.java:1099)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Authenticate
dSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:
121)
        at weblogic.servlet.internal.ServletStubImpl.createServlet(ServletStubIm
pl.java:975)
        at weblogic.servlet.internal.ServletStubImpl.createInstances(ServletStub
Impl.java:954)
        at weblogic.servlet.internal.ServletStubImpl.prepareServlet(ServletStubI
mpl.java:893)
        at weblogic.servlet.internal.WebAppServletContext.preloadServlet(WebAppS
ervletContext.java:3456)
        at weblogic.servlet.internal.WebAppServletContext.preloadServlets(WebApp
ServletContext.java:3413)
        at weblogic.servlet.internal.WebAppServletContext.preloadServlets(WebApp
ServletContext.java:3399)
        at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAp
pServletContext.java:3382)
        at weblogic.servlet.internal.WebAppServletContext.setStarted(WebAppServl
etContext.java:6262)
        at weblogic.servlet.internal.WebAppModule.start(WebAppModule.java:892)
        at weblogic.j2ee.J2EEApplicationContainer.start(J2EEApplicationContainer
.java:2181)
                                 .
                                 .
                                 .
---------------------------------------------------------------------------------
以下是本人的web.xml:
<?xml version="1.0" encoding="GBK"?>
<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">

  <display-name>ds_admin</display-name>  <description>ds_admin</description>
    <filter>
<filter-name>Struts 2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter> <filter-mapping>
<filter-name>Struts 2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
  <context-param>
    <param-name>log4jConfigLocation</param-name>
    <param-value>/WEB-INF/config/log/log4j.properties</param-value>
  </context-param>
  
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>
            /WEB-INF/config/spring/applicationContext-jdbc.xml,/WEB-INF/config/spring/applicationContext.xml
            classpath:org/codehaus/xfire/spring/xfire.xml
    </param-value>
  </context-param>
  
    <filter>
        <filter-name>Set Character Encoding</filter-name>
        <filter-class>com.ds_admin.filter.EncodingFilter</filter-class>
        <init-param>
            <param-name>encoding</param-name>
            <param-value>gbk</param-value>
        </init-param>
    </filter>      
    <filter-mapping>
        <filter-name>Set Character Encoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping> 
    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
  <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
      <param-name>config</param-name>
      <param-value>/WEB-INF/config/struts/struts-config.xml</param-value>
    </init-param>
    <init-param>
      <param-name>debug</param-name>
      <param-value>3</param-value>
    </init-param>
    <init-param>
      <param-name>detail</param-name>
      <param-value>3</param-value>
    </init-param>
    <load-on-startup>0</load-on-startup>
  </servlet>
  
  <servlet>
      <servlet-name>AjaxServlet</servlet-name>
      <servlet-class>com.ds_admin.servlet.AjaxServlet</servlet-class>
      <init-param>
         <param-name>config</param-name>
         <param-value>/WEB-INF/config/ajax/ajax-config.xml</param-value>
      </init-param>
      <load-on-startup>3</load-on-startup>
   </servlet>   <servlet>
<servlet-name>Connector</servlet-name>
<servlet-class>com.fredck.FCKeditor.connector.ConnectorServlet</servlet-class>
<init-param>
<param-name>baseDir</param-name>
<param-value>/UserFiles/</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet>
<servlet-name>SimpleUploader</servlet-name>
<servlet-class>com.fredck.FCKeditor.uploader.SimpleUploaderServlet</servlet-class>
<init-param>
<param-name>baseDir</param-name>
<param-value>/UserFiles/</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>enabled</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>AllowedExtensionsFile</param-name>
<param-value></param-value>
</init-param>
<init-param>
<param-name>DeniedExtensionsFile</param-name>
<param-value>php|php3|php5|phtml|asp|aspx|ascx|jsp|cfm|cfc|pl|bat|exe|dll|reg|cgi</param-value>
</init-param>
<init-param>
<param-name>AllowedExtensionsImage</param-name>
<param-value>jpg|gif|jpeg|png|bmp</param-value>
</init-param>
<init-param>
<param-name>DeniedExtensionsImage</param-name>
<param-value></param-value>
</init-param>
<init-param>
<param-name>AllowedExtensionsFlash</param-name>
<param-value>swf|fla</param-value>
</init-param>
<init-param>
<param-name>DeniedExtensionsFlash</param-name>
<param-value></param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>  
  <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>  
  <servlet-mapping>
      <servlet-name>AjaxServlet</servlet-name>
      <url-pattern>/ajaxservlet</url-pattern>
   </servlet-mapping>
   <servlet-mapping>
    <servlet-name>Connector</servlet-name>
    <url-pattern>/FCKeditor/editor/filemanager/browser/default/connectors/jsp/connector</url-pattern>
  </servlet-mapping>   
  <servlet-mapping>
    <servlet-name>SimpleUploader</servlet-name>
    <url-pattern>/FCKeditor/editor/filemanager/upload/simpleuploader</url-pattern>
   </servlet-mapping>  <mime-mapping>
   <extension>xls</extension>
   <mime-type>application/vnd.ms-excel</mime-type>
  </mime-mapping>  <welcome-file-list>
   <welcome-file>User_Login.jsp</welcome-file>
  </welcome-file-list>
</web-app>
其中applicationContext-jdbc.xml是关于使用struts1项目的配置
applicationContext.xml是关于使用struts2项目的配置
请各位帮忙解决,本人急用,先谢了

解决方案 »

  1.   

    补充一下.在tomcat下是正常的:
    在网上搜索了相关资料:http://topic.csdn.net/u/20070208/10/1a7b6635-0e67-465b-b9e9-107117ecb1b2.html
    但没有解决方案,但网址上情况和本人的一样
      

  2.   

    楼主,你说的问题我遇到过,其中可能有2种情况
    但基本上都是struts-config.xml出现的问题
    1.在web.xml里,添加了struts-*.xml的文件,但没有找到
    2.你的struts-config.xml的配置有问题.可能是没有配置好
    你在problems里看一下吧,应该有报错消息的.
      

  3.   

    将web.xml中的<filter> 
            <filter-name>Set Character Encoding </filter-name> 
            <filter-class>com.ds_admin.filter.EncodingFilter </filter-class> 
            <init-param> 
                <param-name>encoding </param-name> 
                <param-value>gbk </param-value> 
            </init-param> 
        </filter>      
        <filter-mapping> 
            <filter-name>Set Character Encoding </filter-name> 
            <url-pattern>/* </url-pattern> 
        </filter-mapping> 
    去掉。
    在weblogic.xml和weblogic_application.xml配置encoding。
      

  4.   

    web.xml文件中的<?xml version="1.0" encoding="GBK"?> 改成<?xml version="1.0" encoding="UTF-8"?> 试试