今天尝试了一下Struts 整合dwr一直报错啊,我用的是dwr3.0 struts是MyEclipse提供的,错误信息如下:
2009-8-13 17:57:13 org.apache.tomcat.util.digester.SetPropertiesRule begin
警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'debug' to '0' did not find a matching property.
2009-8-13 17:57:13 org.apache.catalina.core.AprLifecycleListener init
信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\jdk 1.6\bin;D:\apache-tomcat-6.0.16\bin
2009-8-13 17:57:13 org.apache.coyote.http11.Http11Protocol init
信息: Initializing Coyote HTTP/1.1 on http-8088
2009-8-13 17:57:13 org.apache.catalina.startup.Catalina load
信息: Initialization processed in 334 ms
2009-8-13 17:57:13 org.apache.catalina.core.StandardService start
信息: Starting service Catalina
2009-8-13 17:57:13 org.apache.catalina.core.StandardEngine start
信息: Starting Servlet Engine: Apache Tomcat/6.0.16
2009-8-13 17:57:14 org.apache.struts.action.ActionServlet initChain
信息: Loading chain catalog from jar:file:/D:/apache-tomcat-6.0.16/webapps/dwr_struts/WEB-INF/lib/struts-core-1.3.8.jar!/org/apache/struts/chain/chain-config.xml
2009-8-13 17:57:14 org.directwebremoting.impl.StartupUtil logStartup
信息: Starting: DwrServlet v3.0.0.116.rc1 on Apache Tomcat/6.0.16 / JDK 1.6.0_14 from Sun Microsystems Inc. at /dwr_struts
2009-8-13 17:57:15 org.directwebremoting.impl.DefaultCreatorManager addCreator
严重: Error loading class for creator 'StrutsCreator[JTestForm]'.
java.lang.IllegalArgumentException
at org.directwebremoting.struts.StrutsCreator.getType(StrutsCreator.java:100)
at org.directwebremoting.impl.DefaultCreatorManager.addCreator(DefaultCreatorManager.java:97)
at org.directwebremoting.impl.DefaultCreatorManager.addCreator(DefaultCreatorManager.java:78)
at org.directwebremoting.impl.DwrXmlConfigurator.loadCreate(DwrXmlConfigurator.java:268)
at org.directwebremoting.impl.DwrXmlConfigurator.loadAllows(DwrXmlConfigurator.java:218)
at org.directwebremoting.impl.DwrXmlConfigurator.configure(DwrXmlConfigurator.java:164)
at org.directwebremoting.impl.StartupUtil.configureFromDefaultDwrXml(StartupUtil.java:587)
at org.directwebremoting.impl.StartupUtil.configureContainerFully(StartupUtil.java:696)
at org.directwebremoting.servlet.DwrServlet.configureContainer(DwrServlet.java:109)
at org.directwebremoting.servlet.DwrServlet.init(DwrServlet.java:68)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4058)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4364)
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:924)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:887)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1147)
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(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:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
2009-8-13 17:57:15 org.apache.coyote.http11.Http11Protocol start
信息: Starting Coyote HTTP/1.1 on http-8088
2009-8-13 17:57:15 org.apache.jk.common.ChannelSocket init
信息: JK: ajp13 listening on /0.0.0.0:8009
2009-8-13 17:57:15 org.apache.jk.server.JkMain start
信息: Jk running ID=0 time=0/21  config=null
2009-8-13 17:57:15 org.apache.catalina.startup.Catalina start
信息: Server startup in 1374 ms
------------------------------------------------------------------
web.xml配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.5" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee   http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  
  <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/struts-config.xml</param-value>
    </init-param>
    <load-on-startup>0</load-on-startup>
  </servlet>
  <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>
  
  <!-- dwr的配置 -->
  <servlet>
   <servlet-name>dwr-invoker</servlet-name>
   <servlet-class>org.directwebremoting.servlet.DwrServlet</servlet-class>
   <init-param>
     <param-name>debug</param-name>
     <param-value>true</param-value>
   </init-param>
   <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
   <servlet-name>dwr-invoker</servlet-name>
   <url-pattern>/dwr/*</url-pattern>
  </servlet-mapping>
  
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>
---------------------------------------
struts配置如下:<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" "http://struts.apache.org/dtds/struts-config_1_3.dtd"><struts-config>
  <form-beans >
    <form-bean name="testForm" type="com.test.struts.form.TestForm" />  </form-beans>  <global-exceptions />
  <global-forwards />
  <action-mappings >
    <action
      attribute="testForm"
      input="/index.jsp"
      name="testForm"
      parameter="command"
      path="/test"
      scope="session"
      type="com.test.struts.action.TestAction" />  </action-mappings>  <message-resources parameter="com.noah.struts.ApplicationResources" />
</struts-config>
---------------------------------------------
dwr配置发下:
<!DOCTYPE dwr PUBLIC "-//GetAhead Limited//DTD Direct Web Remoting 3.0//EN" "http://getahead.org/dwr//dwr30.dtd">
<dwr>
<allow> 
<create creator="struts" javascript="JTestForm">
<param name="formBean" value="testForm" />
</create>
</allow>
</dwr>