2006年05月25日

        为了配置struts的数据源,搞了两天,都快疯了。查了n多的资料,试验了无数次,终于搞成了,最终的配置如下:
  <data-sources>
     <data-source key="mysql datasource" type="org.apache.commons.dbcp.BasicDataSource">
         <set-property property="driverClassName" value="org.gjt.mm.mysql.Driver" />
         <set-property property="url" value="jdbc:mysql://localhost/stocks" />
         <set-property property="username" value="root" />
         <set-property property="password" value="2131018" />
         <set-property property="minCount" value="2" />
         <set-property property="maxCount" value="10" />
      </data-source>
 </data-sources>
       不过成功是成功了,还是有些问题没搞清楚。主要是属性名称方面。很多资料里面JDBC驱动的属性名为driverClass,设置用户的属性名为user。不知道具体如何,还是这两种都可以呢?

    

struts-config.xml中的元素有严格的顺序,如果元素的顺序出错,系统会抛出一个错误,描述如下:
The content of element type "struts-config" must match "(display-name?,description?,data-sources?,form-beans?,global-exceptions?,global-forwards?,
action-mappings?,controller?,message-resources*,plug-in*)". [109]
刚看到这个错误,我总以为是某个元素的拼写出了错误,把整个文件仔细检查了一遍,没有发现任何拼写作错误。查了资料才知道,struts-config.xml中的元素有严格的顺序,他们的顺序应该是象下面这个样子:

<struts−config>
<data−sources>
<data−source>
</data−source>

</data−sources>
<form−beans>

<form−bean />

</form−beans>
<global−forwards>

<forward />

</global−forwards>
<action−mappings>

<action/>

</action−mappings>
<controller />
<message−resource />
<plug−in />

</struts−config>
上面的错误提示不是说元素有拼写错误,而是说struts-config.xml必须按照display-name–>description–>datasources–>form-beans–>global-forwards–>action-mappings–>controller–>message_resources–>plug-in的顺序书写。