Tauruser

JSF will hibernate in spring.

  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  24 随笔 :: 2 文章 :: 19 评论 :: 0 Trackbacks

#

  最近去图书馆借了本《Java Web 服务编程指南》,读了第一章,写点自己的看法吧。
  在还没有接触这本书的时候,我一直的以为WS就只是网络上的web应用,这么说吧,就是我们经常上的网站。看了第一章之后,我才发现之前的直观的看法是错误的,Web Service并不只是一个网站。Web Service使我们能够对网络上的一个对象进行远程调用,也就是Remote Procedure Calls,RPC。
  我是这么理解的,一般性的网站我们也可以看成是广义上的Web Service,但是Web Service并不仅局限行一般性的网站,他更加强大的功能在于提供一个公开的,标准化的接口,让所有的客户都能通过一服务注册表,查找到此项服务,并对此项服务进行绑定。客户可以通过这个公开的,标准化的API接口,进行远程的服务调用。这些服务如,查询天气预报,查询机场服务,在一个网络商场进行下订单操作,等等。只要服务商愿意公开他的Web服务,并在服务注册表发布其服务,所有的潜在客户都可以通过在服务注册表中查找此服务,并得到关于此项服务的一些具体的描述,从而在服务商与客户之间建立bind关系,远程调用这些服务。
   在Web服务中,我们可以看到有三个不同的角色。他们之间的交互关系如下图所示。
  
  
  从这个图我们可以很清楚地看到三者之间的关系。服务提供者提供Web Service,服务消费者是使用此服务客户,而位于最顶端的服务注册表,则为两者互相寻找对方提供了一个桥梁。服务提供者在服务注册表上发布自己提供的服务,服务消费者从服务注册表上查找自己需要的服务,找到后,就可以在服务消费者和服务提供者之间进行绑定,服务消费者就可以对服务提供者提供的服务进行访问,远程调用。这里需要注意的是,服务提供者提供的服务可能是一个非常复杂的服务,他这项服务可能还会调用其它服务提供者提供的服务,他将所有的这些信息整合处理,最终为服务消费者完成此项服务。当然这项服务也可以很简单,简单到服务消费者发起一个访问,直接返回一个响应就可以了。
  三个实体之间要进行通信,为了保证这些通信都能顺利的进行,我们需要为这些通信定义规则,如果大家都遵守这些规则行事,这样我们提供的服务就可以给任何消费者使用,消费者也就可以使用任何的服务提供者的服务了。这些规则有:
  
  1. Web Service Description Language, WSDL,Web服务描述语言,用来描述Web服务。
      
  2. Universal Description, Discovery, and Integration, UDDI,通用描述,发现,集成标准。这个是用来发布和查找Web服务的标准协议。
  3. Simple Object Access Protocol,SOAP,简单对象访问协议。用于绑定到Web服务的标准应用程序协议。

  这三个协议可以简单的和上图的三个操作对应。
  最终我们得到了基本Web服务栈:
  
上面的功能都需要下面的支持。从最底层我们可以看到,Web服务不一定是建立在HTTP之上的,我们可以使用多种基于TCP/IP的应用层协议来实现我们的web service。

posted @ 2006-11-28 12:34 Tauruser 阅读(838) | 评论 (2)编辑 收藏

中大沙发,大家常来坐坐啊!
posted @ 2006-11-25 17:36 Tauruser 阅读(259) | 评论 (0)编辑 收藏

在我负责的一个个人日程模块中,使用了一个<t:inputCalendar/>进行日期的选择,并用一个<h:outputText/>将所选择的日期显示出来。这时候问题就出来了,如要我在<t:inputCalendar/>中选择一个日期,在<h:outputText/>中输出的日期总是会比选择的日期提前一天。搞得很久都没有办法解决,最后还是用多一个<t:inputCalendar/>解决了问题,为了保持样式和<h:outputText/>一致。可以设置<t:inputCalendar/>的属性。
<t:inputCalendar displayValueOnly="true" renderAsPopup="true" readonly="true" value="#{yourBackingBean.selectDate }"/>
如此就可以正常显示了,样式和<h:outputText/>无异。
为什么<f:outputText/>用来输出Date类型就会比预期的日期提前一天呢?
posted @ 2006-11-25 14:16 Tauruser 阅读(1004) | 评论 (2)编辑 收藏

仅列出标题
共3页: 上一页 1 2 3