ice world
There is nothing too difficult if you put your heart into it.
posts - 104, comments - 103, trackbacks - 0, articles - 0
導(dǎo)航
BlogJava
首頁
新隨筆
聯(lián)系
聚合
管理
<
2016年7月
>
日
一
二
三
四
五
六
26
27
28
29
30
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
31
1
2
3
4
5
6
常用鏈接
我的隨筆
我的評(píng)論
我的參與
最新評(píng)論
留言簿
(8)
給我留言
查看公開留言
查看私人留言
隨筆分類
ArcGIS(2)
CSS(4)
Database(14)
eclipse(10)
Hibernate(1)
Java(30)
Javascript(6)
Others(15)
Strut1(3)
Tomcat(7)
Weblogic(1)
Windows(13)
加解密(5)
隨筆檔案
2016年8月 (1)
2016年1月 (1)
2014年3月 (1)
2014年1月 (3)
2013年11月 (1)
2013年9月 (1)
2013年8月 (1)
2013年7月 (2)
2013年6月 (1)
2013年3月 (1)
2013年2月 (4)
2013年1月 (1)
2012年9月 (1)
2012年7月 (2)
2012年6月 (3)
2012年5月 (8)
2012年4月 (1)
2011年11月 (1)
2011年10月 (1)
2011年9月 (1)
2011年8月 (1)
2011年6月 (2)
2011年5月 (3)
2011年4月 (61)
2007年12月 (1)
搜索
最新評(píng)論
1.?re: Failed to load JavaHL Library解決方法
嘖嘖,一語中的。
--Jerry Zhang
2.?re: Error 1935的解決方法
我安裝上面的方法成功了,各位同學(xué)們,千萬別忘記修改注冊(cè)表后重啟電腦:)
--mentoruser
3.?re: CXF+Spring+Tomcat簡(jiǎn)明示例
評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
--無異
4.?re: CXF+Spring+Tomcat簡(jiǎn)明示例
評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
--chiangpan
5.?re: Failed to load JavaHL Library解決方法[未登錄]
頂頂頂
--小明
閱讀排行榜
1.?Failed to load JavaHL Library解決方法(78926)
2.?CXF+Spring+Tomcat簡(jiǎn)明示例(51159)
3.?java RSA加密解密(42690)
4.?Java Tomcat SSL 服務(wù)端/客戶端雙向認(rèn)證(一)(32923)
5.?Java DES文件加密解密 javax.crypto.BadPaddingException: Given final block not properly padded(30899)
評(píng)論排行榜
1.?CXF+Spring+Tomcat簡(jiǎn)明示例(27)
2.?Java Tomcat SSL 服務(wù)端/客戶端雙向認(rèn)證(一)(22)
3.?Java數(shù)字證書對(duì)文件/加密/解密/簽名/校驗(yàn)簽名(8)
4.?java RSA加密解密(7)
5.?Failed to load JavaHL Library解決方法(6)
CXF+Spring+Tomcat簡(jiǎn)明示例
Posted on 2012-07-06 17:29
IceWee
閱讀(51159)
評(píng)論(27)
編輯
收藏
所屬分類:
Others
、
Tomcat
多系統(tǒng)(異構(gòu)系統(tǒng))進(jìn)行交互時(shí),一種良好的方式便是調(diào)用Web Service,本示例基于Apache組織的CXF,為了方便起見特將服務(wù)端和客戶端寫在同一個(gè)工程下,實(shí)際項(xiàng)目中是不可能的,但是客戶端卻依賴于服務(wù)端的Web Service接口,那么可以通過導(dǎo)出jar的方式。
環(huán)境:
MyEclipse10
JDK6
Tomcat7
CXF2.5
Spring3
示例項(xiàng)目結(jié)構(gòu)圖:
如上圖所示,全部依賴的第三方庫都在lib中,下面貼出全部代碼。
IHelloService.java
package
bing.server;
import
javax.jws.WebService;
/** */
/**
* <p>
* WebService接口
* </p>
*
*
@author
IceWee
* @date 2012-7-6
*
@version
1.0
*/
@WebService
public
interface
IHelloService
{
public
String sayHello(String username);
}
HelloServiceImpl.java
package
bing.server;
import
javax.jws.WebService;
/** */
/**
* <p>
* WebService實(shí)現(xiàn)類
* </p>
*
*
@author
IceWee
* @date 2012-7-6
*
@version
1.0
*/
@WebService(endpointInterface
=
"
bing.server.IHelloService
"
, serviceName
=
"
HelloService
"
)
public
class
HelloServiceImpl
implements
IHelloService
{
@Override
public
String sayHello(String username)
{
return
"
hello,
"
+
username;
}
}
HelloServiceClient.java
package
bing.client;
import
org.springframework.context.ApplicationContext;
import
org.springframework.context.support.ClassPathXmlApplicationContext;
import
bing.server.IHelloService;
/** */
/**
* <p>
* WebService調(diào)用方-客戶端
* </p>
*
*
@author
IceWee
* @date 2012-7-6
*
@version
1.0
*/
public
class
HelloServiceClient
{
public
static
void
main(String[] args)
{
ApplicationContext context
=
new
ClassPathXmlApplicationContext(
"
applicationContext-client.xml
"
);
IHelloService helloService
=
(IHelloService) context.getBean(
"
client
"
);
String response
=
helloService.sayHello(
"
Peter
"
);
System.out.println(response);
}
}
applicationContext-server.xml
<?
xml version="1.0" encoding="UTF-8"
?>
<
beans
xmlns
="http://www.springframework.org/schema/beans"
xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws
="http://cxf.apache.org/jaxws"
xsi:schemaLocation
="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"
>
<!--
***注意***
手動(dòng)添加的內(nèi)容:
xmlns:jaxws="http://cxf.apache.org/jaxws"
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"
-->
<
import
resource
="classpath:META-INF/cxf/cxf.xml"
/>
<
import
resource
="classpath:META-INF/cxf/cxf-extension-soap.xml"
/>
<
import
resource
="classpath:META-INF/cxf/cxf-servlet.xml"
/>
<
jaxws:endpoint
id
="helloService"
implementor
="bing.server.HelloServiceImpl"
address
="/helloService"
/>
</
beans
>
applicationContext-client.xml
<?
xml version="1.0" encoding="UTF-8"
?>
<
beans
xmlns
="http://www.springframework.org/schema/beans"
xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jaxws
="http://cxf.apache.org/jaxws"
xsi:schemaLocation
="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"
>
<!--
***注意***
手動(dòng)添加的內(nèi)容:
xmlns:jaxws="http://cxf.apache.org/jaxws"
http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd"
-->
<
import
resource
="classpath:META-INF/cxf/cxf.xml"
/>
<
import
resource
="classpath:META-INF/cxf/cxf-extension-soap.xml"
/>
<
import
resource
="classpath:META-INF/cxf/cxf-servlet.xml"
/>
<
bean
id
="client"
class
="bing.server.IHelloService"
factory-bean
="clientFactory"
factory-method
="create"
/>
<
bean
id
="clientFactory"
class
="org.apache.cxf.jaxws.JaxWsProxyFactoryBean"
>
<
property
name
="serviceClass"
value
="bing.server.IHelloService"
/>
<
property
name
="address"
value
="http://localhost:8080/CXFDemo/ws/helloService"
/>
</
bean
>
</
beans
>
web.xml
<?
xml version="1.0" encoding="UTF-8"
?>
<
web-app
version
="3.0"
xmlns
="http://java.sun.com/xml/ns/javaee"
xmlns:xsi
="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation
="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
>
<
display-name
>
CXFDemo
</
display-name
>
<
context-param
>
<
param-name
>
contextConfigLocation
</
param-name
>
<
param-value
>
classpath:applicationContext-server.xml
</
param-value
>
</
context-param
>
<
listener
>
<
listener-class
>
org.springframework.web.context.ContextLoaderListener
</
listener-class
>
</
listener
>
<
servlet
>
<
servlet-name
>
CXFServlet
</
servlet-name
>
<
display-name
>
CXFServlet
</
display-name
>
<
servlet-class
>
org.apache.cxf.transport.servlet.CXFServlet
</
servlet-class
>
<
load-on-startup
>
1
</
load-on-startup
>
</
servlet
>
<
servlet-mapping
>
<
servlet-name
>
CXFServlet
</
servlet-name
>
<
url-pattern
>
/ws/*
</
url-pattern
>
</
servlet-mapping
>
<
welcome-file-list
>
<
welcome-file
>
index.jsp
</
welcome-file
>
</
welcome-file-list
>
</
web-app
>
所有項(xiàng)目都已配置完成,可以發(fā)布到Tomcat了,在瀏覽器中輸入:
http://localhost:8080/CXFDemo/ws
,返回如圖:
從上圖中可以看到我們對(duì)外發(fā)布的WebService接口,點(diǎn)擊藍(lán)色超鏈接,返回如圖:
到此,證明我們的Web Service已經(jīng)發(fā)布成功,可以進(jìn)行調(diào)用測(cè)試了。運(yùn)行HelloServiceClient,返回如圖:
全文完!
Feedback
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2012-11-06 14:54 by
林祥
<import resource="classpath:META-INF/cxf/cxf.xml" />
<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />
<import resource="classpath:META-INF/cxf/cxf-servlet.xml" />
這些文件沒有啊
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2012-11-27 13:09 by
狼湖
HelloServiceImpl 類的注解:
@WebService(endpointInterface = "bind.server.IHelloService", serviceName = "helloService")
注意:serviceName 是小寫開頭的helloService否則出錯(cuò)
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2012-11-27 13:10 by
狼湖
@林祥
那幾個(gè)xml在cxf-xxx.jar包里面
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2012-11-28 11:07 by
qss
1、非常感謝樓主,我運(yùn)行成功了。
2、我運(yùn)行時(shí)報(bào)錯(cuò)誤:
我看了原因是jar不全,我將apache-cxf-2.7.0解壓后的lib中的jar包全部引入就好了。
3.再次感謝樓主!//:
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2012-11-28 11:24 by
IceWee
@qss
^_^
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2012-11-28 11:53 by
qss
1.IceWee,你好。
我想問一下,我返回的是對(duì)象時(shí),對(duì)象有個(gè)屬性error_message,部署tomcat時(shí),報(bào):類的兩個(gè)屬性具有相同名稱 "error_message" ?
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2012-11-28 15:32 by
qss
IceWee,我已經(jīng)解決了,^_^
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2013-01-16 10:25 by
Ameri
謝謝
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2013-03-09 15:44 by
asfas d
在網(wǎng)上找了兩天 最后還是在你這里把問題解決了 能不能再寫個(gè)傳復(fù)雜數(shù)據(jù)的例子呀LZ
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2013-03-13 10:39 by
周炎婷
你好,我想問一下,如何運(yùn)行客戶端?
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2013-04-26 23:16 by
畢淑敏
好帖子,比網(wǎng)上n個(gè)cxf實(shí)例都強(qiáng)!
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2013-08-06 15:55 by
derekwu
少了 Woodstox這個(gè)包,否則報(bào)錯(cuò)java.lang.RuntimeException: Cannot create a secure XMLInputFactory
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2013-08-07 13:59 by
開發(fā)吧
博主能否提供源碼啊?謝謝
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2013-11-25 11:31 by
3000
@derekwu
加了Woodstox之后,報(bào)找不到org/codehaus/stax2/XMLInputFactory2類,又加了stax2-api-3.1.1.jar 才好。
我用的apache-cxf-2.6.10
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2013-12-03 14:52 by
啊啊啊啊
啊啊啊啊啊啊啊啊
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2014-01-20 15:56 by
求知者 QQ 285678313
我的applicationContext-server.xml編譯不過,“jaxws:endpoint ”那一行報(bào)錯(cuò),錯(cuò)誤信息是“Failed to read schema document ‘
http://cxf.apache.org/schemas/jaxws.xsd
’, because 1) could not find the document; 2) the document could not be read; 3) the root element of the document is not <xsd:schema>.
”
說找不到j(luò)axws.xsd文件,我的網(wǎng)絡(luò)良好,這個(gè)URL放在瀏覽器里可以訪問到,求解,上面找不到你的聯(lián)系方式,我的QQ 285678313
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2014-04-17 13:39 by
黑色柳丁
一模一樣的配置,運(yùn)行后提示:No ASM ClassWriterFound
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2014-04-17 13:39 by
黑色柳丁
然后引入asm的jar包就ok了。
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2014-09-24 11:22 by
555
555
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2014-09-25 14:55 by
鄧豐坡
再次感謝,之前找了N多資料,也沒有你的一個(gè)實(shí)例明了。
不過你的jar少說了
stax2-api-3.1.1.jar
woodstox-core-asl-4.2.0.jar
這個(gè)確實(shí)
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例[未登錄]
回復(fù)
更多評(píng)論
2014-10-10 11:08 by
william
非常感謝樓主的分享,實(shí)例太棒啦,我了兩天,這是最棒的
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例[未登錄]
回復(fù)
更多評(píng)論
2014-11-10 13:30 by
ada
謝謝樓主,困擾我兩天的問題終于解決了!
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2014-11-29 10:51 by
和
@求知者 QQ 285678313
我也遇到了同樣的問題,請(qǐng)問怎么解決。謝謝
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2015-09-19 19:31 by
枯荷聽雨
怎樣調(diào)用那個(gè)接口,客戶端如何訪問呢?
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2015-12-17 14:20 by
匿名者
@林祥
在cxf.jar中
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2016-07-16 17:44 by
chiangpan
CXF版本不同,有些其實(shí)不需要<import resource="classpath:META-INF/cxf/cxf-extension-soap.xml" />這些配置
#
re: CXF+Spring+Tomcat簡(jiǎn)明示例
回復(fù)
更多評(píng)論
2016-07-23 15:01 by
無異
請(qǐng)問有沒有遇到這個(gè)問題的?
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'wbService': Invocation of init method failed; nested exception is java.lang.VerifyError: (class: com/wfy/service/jaxws_asm/Aaaa, method: setUserName signature: (Ljava/lang/String;)V) Illegal instruction found at offset 1
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1507)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:299)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:295)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:644)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:493)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:389)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:294)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4887)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5381)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:633)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:1113)
at org.apache.catalina.startup.HostConfig$DeployDirectory.run(HostConfig.java:1671)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.run(FutureTask.java:262)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
新用戶注冊(cè)
刷新評(píng)論列表
只有注冊(cè)用戶
登錄
后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
相關(guān)文章:
ORA-01438: value larger than specified precision allowed for this column & Could not synchronize database state with session
Debian 網(wǎng)絡(luò)設(shè)置以及非法關(guān)機(jī)后無法聯(lián)網(wǎng) connect: network is unreachable
SVN(Subversion)自動(dòng)同步備份配置
Debian Subversion(SVN)的安裝
Linux VNC服務(wù)安裝與配置
Linux 64bit下JBoss7安裝手冊(cè)
CXF+Spring+Tomcat簡(jiǎn)明示例
幾款JQuery實(shí)現(xiàn)的右鍵菜單插件
C#操作word總結(jié)
Adobe Photoshop CS4打開圖片錯(cuò)位,出現(xiàn)橫豎的條紋、拉絲
Powered by:
BlogJava
Copyright © IceWee
主站蜘蛛池模板:
777亚洲精品乱码久久久久久
|
久久激情亚洲精品无码?V
|
久久亚洲春色中文字幕久久久
|
中国精品一级毛片免费播放
|
亚洲成A∨人片天堂网无码
|
免费看一级高潮毛片
|
亚洲国产精品自产在线播放
|
一个人免费观看日本www视频
|
国产99视频精品免费观看7
|
亚洲人成777在线播放
|
91免费资源网站入口
|
亚洲日韩精品无码专区加勒比☆
|
在线播放免费播放av片
|
羞羞视频在线免费观看
|
亚洲最大激情中文字幕
|
免费国产99久久久香蕉
|
亚洲网红精品大秀在线观看
|
青青青国产在线观看免费网站
|
亚洲影院天堂中文av色
|
四虎影库久免费视频
|
一个人免费观看日本www视频
|
久久精品国产亚洲麻豆
|
亚洲一级毛片免费在线观看
|
亚洲熟妇无码av另类vr影视
|
又爽又黄无遮挡高清免费视频
|
黄色短视频免费看
|
亚洲精品视频在线免费
|
成年女人永久免费观看片
|
天堂亚洲免费视频
|
日韩精品亚洲人成在线观看
|
国产精品亚洲不卡一区二区三区
|
免费91麻豆精品国产自产在线观看
|
久久狠狠高潮亚洲精品
|
国产精品国产午夜免费福利看
|
丰满妇女做a级毛片免费观看
|
免费人成视网站在线观看不卡
|
中国一级特黄的片子免费
|
亚洲乱码在线观看
|
无码国产精品一区二区免费I6
|
国产午夜亚洲精品不卡电影
|
久久青青草原亚洲AV无码麻豆
|