java之socket之SDP协议简介
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
java之socket之SDP协议简介
java 之socket 之SDP 协议简介
SDP support is essentially aTCPbypass technology.
和TCP 有重要的关系)
When SDP is enabled and an application attempts to open a TCP connection, the TCP mechanism is bypassed and communication goes directly to the IB network.For example, when your application attempts to bind to a TCP address, the underlying software will decide, based on information in the configuration file, if it should be rebound to an SDP protocol. This process can happen during the binding process or the connecting process (but happens only once for each socket).
There are no API changes required in your code to take advantage of the SDP protocol: the implementation is transparent and is supported by the classicnetworking () and the New I/O (java.nio.channels) packages
会用到net 和IO ). See the Supported Java APIs section for a list of classes that support the SDP protocol.
SDP support is disabled by default. (默认是关闭的,需要两步来打开) The steps to enable SDP support are:
Create an SDP configuration file.
Set the system property that specifies the location of the configuration file.
用JWSDP 将java 和Web 服务结合起来Sun 的Java Web
服务开发工具包(JWSDP )能够让你完全使用Java 编程语
言来编写Web 服务,但是这些工具的数量和复杂性可能会让使用JWSDP 的新程序员束手无策。
JWSDP 支持行业标准,这就能够确保其与标准组织所发布的技术和规范具有互操作
性,例如万维网协会(W3C )以及结构信息标准推动组织
(OASIS )等。
JWSDP还提供多种辅助工具,例如WSDL stub 编译器,它能够生成一个WSDL 文件,用于Web 服务和独立的Web 服务UDDI 2.0 注册表。
JWSDP 还能和
Apache Tomcat 以及一些Ant 的任务捆绑工作,这就让你能够在Tomcat 内注册和治理Web 服务。
JWSDP 的编程接口一般被分成两个大类:一类用来处理xml 文档,另一类用来处理远程过程(remote PRocedure )。
面向文档的API
有:用于XML 处理(JAXP )的Java API
用于XML 绑定的(JAXB )的Java 架构面向远程过程的
API 有:用于基于XML 的RPC ( JAX-RPC )的Java API
用于XML 注册表(JAXR )的Java API
用于XML 信使服务(JAXM )的Java API 现在让我们将每
个API 集分开,看看我们能够用每个API 来做些什么。
JAXP
JAXP 为剖析和转换 XML 文档公开了一些可插入的 API ,这样就不再需要专门的 XML 处理器了。
JAXB
JAXB 为基于 XML 的 Java 应用程序的开发公开一些 JAXB 为映射XML 文档和 Java 对象提供了工具、 API 和框架。
为把 XML 结构描述转变成为Java 类,它还提供了一个编译器。
绑定框架让进出的XML 文档的错误和验证检查成为可能。
JAX-RPC
JAX-RPC 为开发基于 SOAP 的 Web 服务端点( endpoint ) 和客户端公开了 API 。
JAX-RPC 是 J2EE 1.4 平台所必需的工具包。
JAXR JAXM
通过发送附加信息来支持 SOAP 1.1 。
JAXM 使用信使配置来工作,例如ebXML 的传输、路由和信息打包处理服务( Packaging Message Handling Service )。
这一概念为
SAAJ 扩展了 JAXM ,用以让开发人员开发出使用带有附加信息的 SOAP 。
测试 JWSDP 能力现在让我们来测试 JWSDP ,并看看要发布一个简单的 Web 服务我们需要做什么。
Listing A 里的示例代码演示了你可以如何使用 JWSDP 来将一个简单的股票 API 。
JAXR 为对 XML 注册表的访问、查询和发布公开了 API 。
JAXM 工具包为发送和接收面向文档的 XML 信息公开了 API 。
JAXM 在未来支持基于标准的信使协议提供了支持。
SAAJ
部署 Web 服务以及 Web 服务的客户端提供了一个全面的工具和API 。
它当然是很灵活和强大的了;但是,它不是为了让人头疼而设计的。
单单这头动物的巨大体型就能够吓倒大报价服务发布到注册表里。
下面代码列表的每个都会更加深入的说明JWSDP 组件的能力:Listing B 里的
executePublish 方法会处理发布过程中的大部分事务。
它会调用多个辅助方法来从事一些任务,例如验证、创建服务集合、将服务绑定到端点等等。
Listing C 里的 createOrg 方法会创建一个结构,用来表示服务所属的机构。
Listing D 里的 addClassifications 方法会创建一个结构,用来将服务划分入预定的各个类别里。
Listing E 里的 connectToRegistry 方法会创建一个到指定注册表的连接。
Listing F 里的 disconnect 方法会断开到注册表的连接。
Listing G
里的 saveServices 方法会确实地将服务发布给注册表。
Listing H
里的 bindServices 方法会将服务同其端点进行绑定。
Listing I 里的 authenticate 方法会使用指定的用户名和密码来对注册表进行验证。
Listing J 里的 createContact 方法会创建一个包含有某个组织联系信息的结构。
灵活性等于复杂性 JWSDP 为创建和
多数的新手。
但是对于那些希望在这头野兽身上多花一点时间的人来说,它所带来的可能成果是无可限量的。