永发信息网

web工程添加webservice接口

答案:2  悬赏:80  手机版
解决时间 2021-08-12 10:27
web工程添加webservice接口 web工程中使用了spring 我不会配置 希望高手给我远程 QQ:121849757 如果帮我弄好了 在追加100分 谢谢了 在线等
最佳答案

1.创建web工程


2.收集相关jar包:(可从官方网[xfire.codehaus.org]取得)


3,配置web.xml


4.编写一个服务接口及其实现类


5.创建xifre配置文件


6.部署web工程到服务器


详说:


1.创建web工程(略)


2.收集相关jar(略)


3.配置web.xml


<!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>

  <servlet>
  <servlet-name>XFireServlet</servlet-name>
  <display-name>XFire Servlet</display-name>
  <servlet-class>
  org.codehaus.xfire.transport.http.XFireConfigurableServlet
  </servlet-class>
  </servlet>

  <servlet-mapping>
  <servlet-name>XFireServlet</servlet-name>
  <url-pattern>/servlet/XFireServlet/*</url-pattern>
  </servlet-mapping>

  <servlet-mapping>
  <servlet-name>XFireServlet</servlet-name>
  <url-pattern>/services/*</url-pattern>
  </servlet-mapping>
</web-app>


4.编写服务接口及其实现类


接口:


public interface BookService{


public Book findBook(String isbn);


}


接口实现类:


public class BookServiceImpl implements BookService
{
  private Book onlyBook;
   
  public BookServiceImpl()
  {
  onlyBook = new Book();
  onlyBook.setAuthor("Dan Diephouse");
  onlyBook.setTitle("Using XFire");
  onlyBook.setIsbn("0123456789");
  }

  public Book[] getBooks() 
  {
  return new Book[] { onlyBook };
  }
   
  public Book findBook(String isbn) throws BookException
  {
  if (isbn.equals(onlyBook.getIsbn()))
  return onlyBook;
   
  throw new BookException("Book not exists",new BookExceptionDetail("NOT_EXIST","Can't find book"));
  }

 public Map getBooksMap() {
  Map result = new HashMap();
  result.put(onlyBook.getIsbn(), onlyBook);
  return result;
 }
}
5.创建xifre配置文件
在META-INF下创建xfire/services.xml文件,如果系统找不到该文件可以试着创建WEB-INF/classes/META-INF/xfire/services.xml文件,文件配置内容具体如下:


<beans xmlns=" http://xfire.codehaus.org/config/1.0">
  <service>
  <name>BookService</name>
<namespace> http://xfire.codehaus.org/BookService</namespace>
  <serviceClass>org.codehaus.xfire.demo.BookService</serviceClass>
  <implementationClass>org.codehaus.xfire.demo.BookServiceImpl</implementationClass>
  <inHandlers>
  <handler handlerClass="org.codehaus.xfire.demo.handlers.CheckVersionHandler" />
  </inHandlers>
  </service>
</beans>


6.部署web工程,访问http://localhost:youport/yourprojectname/services/BookService?wsdl

全部回答

<!-- ========================== hibernate事务管理 =============================== --> <bean id="transactionManager"  class="org.springframework.orm.hibernate3.HibernateTransactionManager">    <property name="sessionFactory" ref="sessionFactory" /> </bean> <!-- ============spring事务事务代理================ --> <bean id="proxyUserLoginService" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">    <property name="transactionManager" ref="transactionManager" />    <property name="target" ref="personService" />    <property name="transactionAttributes">     <props>     <prop key="get*">PROPARAGATION_REQUIRED,readOnly</prop>     </props>    </property> </bean>

在spring的配置文件中配置了一个hibernate的事务管理器,这个管理器只是管理sessionFactory中的事务(不包括事务的声明,提交和回滚)。 在spring的配置文件中配置了一个spring的事务管理器(这个不是事务管理器,是事务拦截器),象你现在配的这个就是拦截以get开头的数据库请求,它会自动为你的get*请求就加上事务控制,成功则提交,失败则回滚(hibernate的事务管理器没这功能)。 在spring的配置文件中配置了一个hibernate的事务管理器,是为了注入给事务拦截器(TransactionProxyFactoryBean)(你要说TransactionProxyFactoryBean反向控制transactionManager也可以)。 这句就是注入的配置<property name="transactionManager" ref="transactionManager" />

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
黄老之学是什么?
QQ空间日记无浏览记录
黄陂区武汉市烟草专卖局黄陂分局我想知道这个
求解一政治题
婚外情应该怎么处理?
有些人手上有很多号,我很纳闷!有哪位知情者
在手机上安装flash3.0
视频格式的如何转化成mp3格式
龙之谷32的A武器不能封印
我该如何向已经拒绝过我的女孩子表明我的意思
我的空间为什么不能转载日志了啊
四川省最好的体校是?
北京的外贸服装厂在哪
娄星区娄底市公安局驻市城管执法局工作联络室
7钻,会员,超级QQ中如果期限到了,但不续费
推荐资讯
沈丘县周口中国体育彩票在什么地方啊,我要过
这个图怎么弄出来的
怎样才能变胖啊!
怎么我的图标管理里面找不到黄钻和会员的
上海电信第五大区有谁在玩
为什么人总是那么虚伪,连自己都能欺骗自己
CF单机版 急急急急!!
推几本好书(漫画、小说……)
我认为父母在日常生活中一定要严格要求孩子们
爱情什么时间来 我的呢~~郁闷
技嘉主板怎么关闭软驱,BIOS里的自检程序怎么
赞美敬业的句子,怎样形容爱岗敬业的词有敬业
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?