重归混沌
欲为诸佛龙象,必先做众生牛马
BlogJava
首页
新随笔
新文章
联系
聚合
管理
posts - 66, comments - 11, trackbacks - 0
EJB学习笔记(十)
实现WEB服务客户
web服务是跨平台的、跨语言的,所以WEB服务的客户端使用的语言和平台和他的服务端没有必然的关系。比如我们可以在.Net下开发、部署web服务,然后在J2EE平台下调用它,或者使用在J2EE平台下开发、部署web服务,然后使用VB来调用它。
在J2EE平台中,WEB服务客户同EJB客户类似。如下两种方式能够访问到WEB服务:
1、不借助于JNDI查找,即使用单独的JAX-RPC客户访问。
2、借助于JNDI上下文访问WEB服务的J2EE客户
第一种方法称之为静态存根,此时需要在客户端预先生成SOAP客户存根,这同RMI存根类似。第二种方法称之为动态代理。它将在运行时获得WSDL描述,然后创建动态代理。无论采用哪种方式访问WEB服务,客户都需要获得服务Endpoint地址URL,否则单凭JNDI名是很难访问到WEB服务的。
package
com.testproject.ejb.web;
import
java.net.URL;
import
javax.xml.namespace.QName;
import
javax.xml.rpc.Service;
import
javax.xml.rpc.ServiceFactory;
/** */
/**
* 单独JAX-RPC客户代码实例。
* 它使用了动态代理方法,以获得对远程WEB服务的引用。
*
*/
public
class
HelloClient
{
static
String host
=
"
localhost
"
;
//
web服务的名字
static
String serviceURL
=
"
HelloBean
"
;
//
名称空间
static
String nameSpaceUri
=
"
urn:examples
"
;
static
String serviceName
=
"
HelloWorldWS
"
;
//
web服务调用的地址
static
String serviceEndpointAddress
=
"
http://
"
+
host
+
"
:8000
"
+
serviceURL;
public
static
void
main(String[] args)
throws
Exception
{
HelloInterface hello
=
null
;
//
动态代理方法
//
1、指定WSDL文件的位置
URL url
=
new
URL(serviceEndpointAddress
+
"
?WSDL
"
);
//
2、创建服务工厂实例
ServiceFactory serviceFactory
=
ServiceFactory.newInstance();
//
3、创建服务对象,以作为代理工厂
Service HelloService
=
serviceFactory.createService(url,
new
QName(nameSpaceUri,serviceName));
//
4、获得port引用
hello
=
(HelloInterface)HelloService.getPort(HelloInterface.
class
);
//
调用hello()方法
System.out.println(
"
Dynamic Proxy:
"
+
hello.hello());
}
}
posted on 2009-11-13 16:45
王永庆
阅读(130)
评论(0)
编辑
收藏
所属分类:
EJB学习笔记
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
相关文章:
EJB学习笔记(十三)
EJB学习笔记(十二)
EJB学习笔记(十一)
EJB学习笔记(十)
EJB学习笔记(九)
EJB学习笔记(八)
EJB学习笔记(七)
EJB学习笔记(六)
EJB学习笔记(五)
EJB学习笔记(四)
<
2009年11月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
1
2
3
4
5
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
(1)
给我留言
查看公开留言
查看私人留言
随笔分类
EJB学习笔记(13)
HIBERNATE(25)
J2SE(1)
JAVASCRIPT
SOA
SPRING(16)
WEBWORK
人生随笔(7)
开发实践
设计思想(4)
财经新闻
随笔档案
2010年1月 (2)
2009年12月 (2)
2009年11月 (29)
2009年10月 (33)
关注blogs
Anders小明的Blog
DWR学习手册
IBM解决方案
j2ee api
JavaEye Java
java技术赛迪网
jdk详解
J道论坛
mldn解惑
robbin的自言自语
SpringFramework中文论坛
validation详细解释
一只小蚂蚁
中国it实验室
啊密果
当当网
林信良学习笔记
灰狐动力
鼠标的咖啡屋
搜索
最新评论
1. re: 心中的那个她[未登录]
如果心情能那么容易放开就好了,碰到她是我的缘分,但是她的缘分不知道在哪里。
--王永庆
2. re: 心中的那个她[未登录]
兄弟,喜欢就大胆去追好了,就是因为喜欢才会有不愉快,如果想一辈子没有这些烦恼,找一个可有可无的人就好了。这种事讲的是缘分吧。别人对你好不好其实不太重要。放开心情就好了。
--萍水相逢
3. re: 心中的那个她
只能同甘不能共苦,就他妈算了吧,程序员也是人啊!我现在也很讨厌女的不理解人情。
--咖啡妆
4. re: 难以割舍的那份情感
评论内容较长,点击标题查看
--王永庆
5. re: 难以割舍的那份情感
评论内容较长,点击标题查看
--隔叶黄莺
阅读排行榜
1. Spring学习笔记(四)-----Spring in Action (1584)
2. 2009年个人工资所得税与奖金所得税是如何计算的(1002)
3. 什么是JTA(715)
4. Hibernate深入浅出(二十四)-----读深入浅出hibernate有感(548)
5. Hibernate深入浅出(二十五)-----读深入浅出hibernate有感(350)
评论排行榜
1. 心中的那个她(3)
2. 难以割舍的那份情感(2)
3. Spring学习笔记(四)-----Spring in Action (2)
4. EJB学习笔记(二) (0)
5. EJB学习笔记(一)(0)