| 
         
     
     | 
     | 
    
  
    | 
    今天被osworkflow的数据库配置(mysql)困住了 | 
   
  
     | 
   
  
     | 
   
  
    | 
     作者:未知  来源:月光软件站  加入时间:2005-2-28 月光软件站  | 
   
  
    今天研究了一下osworkflow,想运行一下他的例子程序看看效果。结果在配置与数据库连接方面出了问题,郁闷至极。
  我用的是mysql数据库,按照 http://www.opensymphony.com/osworkflow/1.3%20Running%20the%20Example%20App.html一步一步的配置。 我的配置文件具体如下: 1:在tomcat的conf目录下修改server.xml,增加以下内容 <Context path="/osworkflow_example" docBase="osworkflow-2.7.0-example"           debug= "99" reloadable="true" crossContext="true"  verbosity="DEBUG"> <!-- debug level is set to paranoid, to know what is happening,       turn it off once you do not need it --> <Logger className="org.apache.catalina.logger.FileLogger"         prefix="OSWorkflow." suffix=".log" timestamp="true"/> <!--      put log4j.jar into:     TOMCAT_ROOT/webapp/osworkflow-2.7.0-example/WEB-INF/lib      if you want to use it for logging  -->   <Resource name="jdbc/DefaultDS"                auth="Container"                type="javax.sql.DataSource"/>
    <ResourceParams name="jdbc/DefaultDS">          <parameter>       <name>factory</name>             <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>     </parameter>          <!--     <parameter>          <name>factory</name>          <value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>            </parameter>            -->     <!-- Maximum number of dB connections in pool. Make sure you          configure your mysqld max_connections large enough to handle          all of your db connections. Set to 0 for no limit.          -->     <parameter>       <name>maxActive</name>       <value>100</value>     </parameter>     <!-- Maximum number of idle dB connections to retain in pool.          Set to 0 for no limit.          -->     <parameter>       <name>maxIdle</name>       <value>30</value>     </parameter>      <!-- Maximum time to wait for a dB connection to become available          in ms, in this example 10 seconds. An Exception is thrown if          this timeout is exceeded.  Set to -1 to wait indefinitely.          -->     <parameter>       <name>maxWait</name>       <value>10000</value>     </parameter>     <!-- MySQL dB username and password for dB connections  -->     <parameter>      <name>username</name>      <value>root</value>     </parameter>     <parameter>      <name>password</name>      <value></value>     </parameter>     <!-- Class name for mm.mysql JDBC driver -->     <parameter>        <name>driverClassName</name>        <value>org.gjt.mm.mysql.Driver</value>     </parameter>     <!-- The JDBC connection url for connecting to your MySQL dB.          The autoReconnect=true argument to the url makes sure that the          mm.mysql JDBC Driver will automatically reconnect if mysqld closed the          connection.  mysqld by default closes idle connections after 8 hours.          -->     <parameter>       <name>url</name>       <value>jdbc:mysql://localhost:3306/osworkflow?autoReconnect=true</value>     </parameter>   </ResourceParams> </Context>
  2:配置osworkflow.xml(在WEB-INF\classes目录下),内容如下: <osworkflow> <persistence class="com.opensymphony.workflow.spi.jdbc.MySQLWorkflowStore"> <!-- For jdbc persistence, all are required. --> <property key="datasource" value="jdbc/DefaultDS"/> <property key="entry.sequence"                         value="select count(*) + 1 from os_wfentry"/> <property key="entry.table" value="OS_WFENTRY"/> <property key="entry.id" value="ID"/> <property key="entry.name" value="NAME"/> <property key="entry.state" value="STATE"/> <!-- <property key="step.sequence" value="select sum(c1) from  (select 1 tb, count(*) c1 from os_currentstep  union select 2 tb, count(*) c1 from os_historystep)"/> --> <property key="step.sequence" value="select sum(c1) + 1 from (select 1 as tb, count(*) as c1 from os_currentstep union select 2 as tb, count(*) as c1 from os_historystep) as TabelaFinal" />
  <property key="step.sequence.increment" value="INSERT INTO OS_STEPIDS (ID) values (null)"/>    <property key="step.sequence.retrieve"  value="SELECT max(ID) FROM OS_STEPIDS"/> <property key="history.table" value="OS_HISTORYSTEP"/> <property key="current.table" value="OS_CURRENTSTEP"/> <property key="historyPrev.table" value="OS_HISTORYSTEP_PREV"/> <property key="currentPrev.table" value="OS_CURRENTSTEP_PREV"/> <property key="step.id" value="ID"/> <property key="step.entryId" value="ENTRY_ID"/> <property key="step.stepId" value="STEP_ID"/> <property key="step.actionId" value="ACTION_ID"/> <property key="step.owner" value="OWNER"/> <property key="step.caller" value="CALLER"/> <property key="step.startDate" value="START_DATE"/> <property key="step.finishDate" value="FINISH_DATE"/> <property key="step.dueDate" value="DUE_DATE"/> <property key="step.status" value="STATUS"/> <property key="step.previousId" value="PREVIOUS_ID"/>
  </persistence> </osworkflow>
 
  3:增加propertyset.xml(在WEB-INF\classes目录下),内容如下: <propertysets>     <propertyset name="jdbc" class="com.opensymphony.module.propertyset.database.JDBCPropertySet">         <arg name="datasource" value="jdbc/DefaultDS"/>         <arg name="table.name" value="OS_PROPERTYENTRY"/>         <arg name="col.globalKey" value="GLOBAL_KEY"/>         <arg name="col.itemKey" value="ITEM_KEY"/>         <arg name="col.itemType" value="ITEM_TYPE"/>         <arg name="col.string" value="STRING_VALUE"/>         <arg name="col.date" value="DATE_VALUE"/>         <arg name="col.data" value="DATA_VALUE"/>         <arg name="col.float" value="FLOAT_VALUE"/>         <arg name="col.number" value="NUMBER_VALUE"/>     </propertyset> </propertysets>
 
  4:修改web.xml,内容如下: <?xml version="1.0" encoding="ISO-8859-1"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd";> <web-app> 
 
    <display-name>OSWorkflow Example App</display-name>   <welcome-file-list>     <welcome-file>default.jsp</welcome-file>   </welcome-file-list>   <resource-ref> <description>OSWorkflow Example App</description> <res-ref-name>jdbc/DefaultDS</res-ref-name> <res-ref-type>javax.sql.DataSource</res-ref-type> <res-auth>Container</res-auth> </resource-ref> </web-app>
  5:将jboss-j2ee.jar拷贝到tomcat_home\common\endorsed目录下 6:将驱动程序拷贝到tomcat_home\common\lib目录下
  7:启动tomcat但是报以下错误 严重: Parse error in application web.xml java.lang.NullPointerException         at org.apache.commons.digester.Digester.createSAXException(Digester.java :2540)         at org.apache.commons.digester.Digester.createSAXException(Digester.java :2566)         at org.apache.commons.digester.Digester.endElement(Digester.java:1061)         at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source )         at org.apache.xerces.impl.dtd.XMLDTDValidator.endNamespaceScope(Unknown Source)         at org.apache.xerces.impl.dtd.XMLDTDValidator.handleEndElement(Unknown S ource)         at org.apache.xerces.impl.dtd.XMLDTDValidator.endElement(Unknown Source)
          at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanEndElement( Unknown Source)         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContent Dispatcher.dispatch(Unknown Source)         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Un known 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 org.apache.commons.digester.Digester.parse(Digester.java:1548)         at org.apache.catalina.startup.ContextConfig.applicationConfig(ContextCo nfig.java:263)         at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:62 4)         at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfi g.java:216)         at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(Lifecycl eSupport.java:119)         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4 290)         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase .java:823)         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:80 7)         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
          at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDep loyer.java:277)         at org.apache.catalina.core.StandardHost.install(StandardHost.java:832)         at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:625 )         at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:431 )         at org.apache.catalina.startup.HostConfig.start(HostConfig.java:983)         at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java :349)         at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(Lifecycl eSupport.java:119)         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091)
          at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
          at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478 )         at org.apache.catalina.core.StandardService.start(StandardService.java:4 80)         at org.apache.catalina.core.StandardServer.start(StandardServer.java:231 3)         at org.apache.catalina.startup.Catalina.start(Catalina.java:556)         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:39)         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:25)         at java.lang.reflect.Method.invoke(Method.java:324)         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:287)         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425) 2005-1-26 10:57:44 org.apache.catalina.startup.ContextConfig applicationConfig 严重: Occurred at line 16 column 16 2005-1-26 10:57:44 org.apache.catalina.startup.ContextConfig start 严重: Marking this application unavailable due to previous error(s) 2005-1-26 10:57:44 org.apache.catalina.core.StandardContext start 严重: Error getConfigured 2005-1-26 10:57:44 org.apache.catalina.core.StandardContext start 严重: Context startup failed due to previous errors
 
 
 
  
 
  | 
   
  
     | 
   
  
     相关文章:相关软件:  | 
   
   
      |