SOA(3):JavaSOAP WS & Delphi7 Client

SOA架构实现:Java SOAP Web Service and Delphi 7 Client (3)
Java SOAP Web Service服务端架构搭建

事情远远比你想象的困难,原以为三言两语就可以说清楚,事实证明,比较难。。。

1.看看你的D:/workspace/test/WebRoot/WEB-INF/lib目录下的文件数跟我的一样不一样:
<图片>
注意:mm.mysql.jar是mysql的jdbc驱动,在网上下载一个
      c3p0-0.9.1-pre6.jar和c3p0-oracle-thin-extras-0.9.1-pre6.jar是c3p0数据源组件,暂时没用到,你可以不要

2.在Myeclipse中打开WEB-INF目录下的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>
 <context-param><param-name>webAppRootKey</param-name><param-value>test.root</param-value></context-param>
 <context-param><param-name>log4jConfigLocation</param-name><param-value>/WEB-INF/log4j.properties</param-value></context-param>
        <context-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/dataAccessContext.xml,/WEB-INF/applicationContext.xml, classpath:org/codehaus/xfire/spring/xfire.xml</param-value></context-param>
 <listener><listener-class>org.springframework.web.util.Log4jConfigListener</listener-class></listener>
 <listener><listener-class>org.springframework.web.context.ContextLoaderListener</listener-class></listener>
 <servlet><servlet-name>xfire</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class></servlet>
 <servlet-mapping><servlet-name>xfire</servlet-name><url-pattern>/xfire/*</url-pattern></servlet-mapping>
</web-app>

3.在Myeclipse新建一log4j.properties文件于WEB-INF目录下
内容如下:
log4j.rootLogger=INFO, stdout, logfile
log4j.logger.java.sql.Connection=DEBUG, stdout, logfile
log4j.logger.java.sql.ResultSet=DEBUG stdout, logfile
log4j.logger.java.sql.Statement=DEBUG stdout, logfile
log4j.logger.java.sql.PreparedStatement=DEBUG stdout, logfile

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
#log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.sql.layout.ConversionPattern=%-4r %-5p [%t] %37c %3x - %m%n

log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.logfile.File=${test.root}/WEB-INF/error.log
log4j.appender.logfile.DatePattern='.'yyyy-MM-dd
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n

4.在Myeclipse新建一dataAccessContext.xml文件于WEB-INF目录下
内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans SYSTEM "spring-beans.dtd">
<beans>
 <!--Data Source Define -->
 <!-- Dbcp DataSource Define -->
    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
  <property name="driverClassName">
   <value>${jdbc.driverClassName}</value>
  </property>
  <property name="url">
   <value>${jdbc.url}</value>
  </property>
  <property name="username">
   <value>${jdbc.username}</value>
  </property>
  <property name="password">
   <value>${jdbc.password}</value>
  </property>
 </bean>
    <!-- -->
 <bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
  <property name="dataSource">
   <ref local="dataSource" />
  </property>
 </bean>
 <!--Spring's Ibatis Template Define -->
 <bean id="sqlMapClient" class="org.springframework.orm.ibatis.SqlMapClientFactoryBean">
  <property name="configLocation">
   <value>/WEB-INF/sqlMapConfig.xml</value>
  </property>
  <property name="dataSource">
      <ref local="dataSource" />
  </property>
 </bean>
</beans>

5.在Myeclipse新建一jdbc.properties文件于WEB-INF目录下
内容如下:
jdbc.driverClassName=org.gjt.mm.mysql.Driver
jdbc.url=jdbc:mysql://localhost:3306/backup
jdbc.username=root
jdbc.password=

6.在Myeclipse新建一applicationContext.xml文件于WEB-INF目录下
内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans SYSTEM "spring-beans.dtd">
<beans>
 <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
  <property name="locations">
   <list>
    <value>WEB-INF/jdbc.properties</value>
   </list>
  </property>
 </bean>
 <bean id="baseTransactionProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean" abstract="true">
  <property name="transactionManager">
   <ref bean="transactionManager" />
  </property>
  <property name="transactionAttributes">
   <props>
    <prop key="insert*">PROPAGATION_REQUIRED,-DataAccessException</prop>
    <prop key="update*">PROPAGATION_REQUIRED,-DataAccessException</prop>
    <prop key="get*">PROPAGATION_REQUIRED,readOnly</prop>
    <prop key="*">PROPAGATION_REQUIRED,readOnly</prop>
   </props>
  </property>
 </bean>
</beans>
7.在Myeclipse新建一sqlMapConfig.xml文件于WEB-INF目录下
内容如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE sqlMapConfig
    PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN"
    "http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
  <settings cacheModelsEnabled="true"
            enhancementEnabled="true"
            lazyLoadingEnabled="true" 
            errorTracingEnabled="true"
            maxSessions="64"
      maxTransactions="8"
      maxRequests="128"
            useStatementNamespaces="false"/>
</sqlMapConfig>

8.在Myeclipse新建一xfire-servlet.xml文件于WEB-INF目录下
内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans SYSTEM "spring-beans.dtd">
<beans>
    <bean id="baseWebService" class="org.codehaus.xfire.spring.remoting.XFireExporter" abstract="true">
      <property name="serviceFactory">
          <ref bean="xfire.serviceFactory"/>
      </property>
      <property name="xfire">
          <ref bean="xfire"/>
      </property>
    </bean>
    <bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
    </bean>
    <bean id="domInHandler" class="org.codehaus.xfire.util.dom.DOMInHandler"/>   
</beans>

下一步可以开始做需求收集和分析了...
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值