知识大全 使用CXF和MTOM上传附件
Posted 附件
篇首语:最关情,折尽梅花,难寄相思。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 使用CXF和MTOM上传附件相关的知识,希望对你有一定的参考价值。
使用CXF和MTOM上传附件 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
CXF是一个不错的开源的WS框架 支持多种WS协议 其中包括对附件上传的协议MTOM 下文以一个例子来说明 如何用CXF和MTOM来
实现上传一个WORD的文件到服务端
首先是服务端WS的实现 我们编写一个POJO 来处理一个待上传的简历
Resume java
import javax activation DataHandler;
public class Resume
private String candidateName;
private String resumeFileType;
private DataHandler resume;
这里注意使用DataHandler来处理待上传的简历WORD文件
接口 ResumeUploadService java
import javax jws WebParam;
import javax jws WebService;
import thea dto Resume;
@WebService
public interface ResumeUploadService
void uploadResume(@WebParam(name= resume ) Resume resume);
这里使用了jax ws规范的注释去实现
实现类
import java io File;
import java io FileOutputStream;
import java io IOException;
import java io InputStream;
import java io OutputStream;
import javax activation DataHandler;
import javax jws WebService;
import thea dto Resume;
@WebService(endpointInterface = thea service ResumeUploadService
serviceName = ResumeService )
public class ResumeUploadServiceImpl implements ResumeUploadService
public void uploadResume(Resume resume)
DataHandler handler = resume getResume();
try
InputStream is = handler getInputStream();
OutputStream os = new FileOutputStream(new File( c:\\\\
+ resume getCandidateName() + +
resume getResumeFileType()));
byte[] b = new byte[ ];
int bytesRead = ;
while ((bytesRead = is read(b)) != )
os write(b bytesRead);
os flush();
os close();
is close();
catch (IOException e)
e printStackTrace();
然后在src目录下建立cxf xml 做为服务端的配置文件
<beans xmlns=
xmlns:xsi= instance
xmlns:jaxws=
xsi:schemaLocation=
beans 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= uploadresume
implementor= thea service ResumeUploadServiceImpl
address= /UploadResumeWS >
<jaxws:properties>
<entry key= mtom enabled value= true />
</jaxws:properties>
</jaxws:endpoint>
</beans>
这里注意使用了 <entry key= mtom enabled value= true />设置使用MTOM附件
接下来设计客户端
作为客户端 必须首先有Resume的POJO类 以及还有服务端的接口ResumeUploadService 设计的Client如下
public static void main(String args[]) throws Exception
JaxWsProxyFactoryBean factory = new JaxWsProxyFactoryBean();
factory getInInterceptors() add(new LoggingInInterceptor());
factory getOutInterceptors() add(new LoggingOutInterceptor());
factory setServiceClass(ResumeUploadService class);
factory setAddress
(//localhost: /CxfUploadService/services/UploadResumeWS );
ResumeUploadService client = (ResumeUploadService) factory create();
Resume resume=new Resume();
resume setCandidateName( KarthikeyanC );
resume setResumeFileType( doc );
DataSource source = new FileDataSource(new File( d:\\\\upload doc ));
resume setResume(new DataHandler(source));
client uploadResume(resume);
System exit( );
cha138/Article/program/Java/hx/201311/27050
相关参考
JAVA物理路径上传附件功能 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! publicActi
求百度文库会员帮我下载个档案谢谢!你好,已上传到回答附件,满意请及时采纳。求百度文库会员帮我下载个档案523031350谢谢了附件已上传请下载 满意请采纳回答帮我下载个百度文库的档案,谢谢!
CXF与spring集成 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! .新建webprojec
实例步骤 第一步在myeclipse中新建一个web项目名为webservicetest并导入依赖的jar包(cxfspringa
不敢电子书txt全集下载不敢txt全集小说附件已上传到百度网盘,点选免费下载:敢不敢电子书txt全集下载敢不敢txt全集小说附件已上传到百度网盘,点选免费下载:内容预览:敢不敢你有没有玩过一种叫“敢不
异类(励志)电子书txt全集下载异类(励志)txt全集小说附件已上传到百度网盘,点击免费下载:别忘了采纳哟异类电子书txt全集下载异类txt全集小说附件已上传到百度网盘,点击免费下载:内容预览:异类序
罪裂电子书txt全集下载罪裂txt全集小说附件已上传到百度网盘,点击免费下载:免费的,直接下载就行罪裂txt全集小说附件已上传到百度网盘,点击免费下载:内容预览:正文第二章凌辱之夜(二)随着最后一件衣
以一敌三(高干)的txt全集下载地址以一敌三(高干)txt全集小说附件已上传到百度网盘,点击免费下载:以上情战(高干)的txt全集下载地址情战(高干)txt全集小说附件已上传到百度网盘,点击免费下载:
大神养成系统电子书txt全集下载大神养成系统txt全集小说附件已上传到百度网盘,点选免费下载:内容预览:锘链需要别的再问都市神王养成系统电子书txt全集下载都市神王养成系统txt全集小说附件已上传到百
人性的优点电子书txt全集下载人性的优点txt全集小说附件已上传到百度网盘,点选免费下载:应该是你需要的吧人性的优点全集txt全集下载人性的优点全集txt全集小说附件已上传到百度网盘,点选免费下载:内