這個要調(diào)用傳真協(xié)議了
創(chuàng)新互聯(lián)建站2013年至今,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目成都網(wǎng)站建設(shè)、網(wǎng)站制作網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元仙居做網(wǎng)站,已為上家服務(wù),為仙居各地企業(yè)和個人服務(wù),聯(lián)系電話:18980820575
一般有的貓的驅(qū)動上會有傳真驅(qū)動。
寫本地方法調(diào)用那個驅(qū)動才可以,應(yīng)該挺復(fù)雜的。
畢竟傳真和平時使用的網(wǎng)絡(luò)不一樣,要用電話線撥號,而且要用傳真自己的協(xié)議。
那你要做的就是向這個URL發(fā)送數(shù)據(jù)就好,給個例子:
public???class??Httptest1??{
8??
9???????public???static???void??main(String[]?args)??{
10??
11?????????URL?url??=???null?;
12?????????HttpURLConnection?conn??=???null?;
13?????????OutputStream?outStream??=???null?;
14?????????InputStream?inStream??=???null?;
15?????????
16???????????try???{
17?????????????url??=???new??URL(?"??"?);
18?????????????conn??=??(HttpURLConnection)?url.openConnection();
19?????????????conn.setDoOutput(?true?);
20?????????????conn.setDoInput(?true?);
21??
22?????????????String?sendXml??=???"??xml?version=\?"?1.0?\?"??encoding=\?"?UTF?-?16?\?"??!DOCTYPE?SigMailCommand?SYSTEM?\?"?SigMail.dtd\?"?"?;??//?XML數(shù)據(jù)?????
23??????????????sendXml??+=???"?SigMailCommand?Name=\?"?checkuser\?"?Param?Name=\?"?domainname\?"?test.com.cn/Param?"?;
24?????????????sendXml??+=???"?Param?Name=\?"?username\?"?admin/Param/SigMailCommand?"?;
25??
26?????????????outStream??=??conn.getOutputStream();
27??
28??????????????//?準(zhǔn)備通過CONN對象寫入XML數(shù)據(jù)?
29??????????????BufferedWriter?bw??=???new??BufferedWriter(?new??java.io.OutputStreamWriter(outStream,
30??????????????"?UTF-16?"?));
31?????????????bw.write(sendXml);
32?????????????bw.flush();
33?????????????bw.close();
34?????????????
35??????????????//?DataOutputStream?dataOutStream?=?new?DataOutputStream(outStream);
36??????????????//?dataOutStream.writeChars(xml);
37??????????????//?dataOutStream.flush();
38??????????????//?dataOutStream.close();
39?????????????
40??
41??????????????//?準(zhǔn)備通過CONN對象讀取返回的XML數(shù)據(jù)?
42??
43?????????????inStream??=??conn.getInputStream();
44?????????????StringBuffer?returnXml??=???new??StringBuffer(?""?);
45?????????????BufferedReader?rd??=???new??BufferedReader(?new??InputStreamReader(inStream,
46??????????????????????"?UTF-16?"?));
47???????????????for??(String?line??=???null?;?(line??=??rd.readLine())??!=???null?;)??{
48?????????????????returnXml.append(line);
49?????????????}?
50?????????????System.out.println(returnXml.toString());
51?????????????rd.close();
52??????????}???catch??(IOException?ex)??{
53?????????????ex.printStackTrace();
54??????????}?finally?{
55???????????????try???{
56??????????????????if??(outStream??!=???null?)
57?????????????????????outStream.close();
58??????????????????if??(inStream??!=???null?)
59?????????????????????inStream.close();
60??????????????????if??(conn??!=???null?)
61?????????????????????conn.disconnect();
62??????????????}???catch??(IOException?e)??{
63??????????????????//??TODO?自動生成?catch?塊?
64??????????????????e.printStackTrace();
65?????????????}?
66?????????}?
67??
68?????}?
69??
70?}
給你一個最簡單的方法:
第一、根據(jù) 拿到WSDL文件。
第二、根據(jù)Axis的jar包,把WSDL文件生成客服端java代碼。(可以把java文件打成jar文件,便于管理。怎么生成java代碼,百度里都有說明我就不寫了。)
第三、在你工程里用AXIS的功能屬性,調(diào)用外部接口;給你一個格式模板:
MobileCodeWSLocator l=new MobileCodeWSLocator();//MobileCodeWSLocator是WSDL文件生成客服端java類;
MobileCodeWSSoap s=l.getMobileCodeWSSoap();();//MobileCodeWSSoap 是WSDL文件生成客服端java類
String m=s.getMobileCodeInfo("13811534742", "");
如果你用Axis生成的java類,格式和上面一樣;自己參考一下就懂了。
你上面明顯的連接異常,第三方服務(wù)明顯沒有開,WEBSERVICE可以設(shè)置戶名、密碼,像我們行所有的WEBSERVICE都設(shè)置,安全考慮吧。還有不懂的可以call我。
如果是單靠java的api 的話,是不可能完成的,也可以 試試JNI調(diào)用C了但是你得給 操作系統(tǒng)做軟件接口
這是一個簡單的列子 。
filePath:是發(fā)送傳真的文件路徑
phoneNum: 是傳真號碼,多個傳真號以,隔開傳真號碼的格式為 “區(qū)號”+“-”+ 傳真號碼
實際傳真時,傳真號的格式為 區(qū)號+" "+傳真號碼 如果發(fā)送本地傳真要去掉本地的區(qū)號
private void sendfax(String filePath, String phoneNum){
Properties pro = new Properties();
InputStream inputStream = this.getClass().getClassLoader().getResourceAsStream("/fax4j.properties");
try {
pro.load(inputStream);
} catch (IOException e) {
e.printStackTrace();
}
FaxClient faxClient = FaxClientFactory.createFaxClient("vbs",pro);
FaxJob faxJob = faxClient.createFaxJob();
if(phoneNum != null !"".equals(phoneNum)){
if(phoneNum.indexOf(",") = 0){
String[] faxstr = phoneNum.split(",");
for(int i = 0 ; i faxstr.length; i++){
if(!"".equals(faxstr[i])){
String qhPhone = "";
String phonenum = "";
if(faxstr[i].indexOf("-")=0){
qhPhone = faxstr[i].substring(0,faxstr[i].indexOf("-"));
}
if(MessageConstant.REGIONNUM.equals(qhPhone)){
phonenum = faxstr[i].substring(faxstr[i].indexOf("-")+1);
}else{
phonenum = faxstr[i].replace("-", " ");
}
phonenum = "0,"+phonenum ;//這里的0是由于電話撥號要撥0再撥傳真機號
faxJob.setFile(new File(filePath));
faxJob.setPriority(FaxJobPriority.HIGH_PRIORITY);
faxJob.setTargetAddress(phonenum);
faxJob.setTargetName("");
faxJob.setSenderEmail("");
faxJob.setSenderName("");
faxJob.setSenderFaxNumber("發(fā)送號");
faxClient.submitFaxJob(faxJob);
System.out.println("Fax job submitted,ID:"+faxJob.getID());
}
}
}else{
String qhPhone = "";//區(qū)號
String phonenum = "";
if(phoneNum.indexOf("-")=0){
qhPhone = phoneNum.substring(0,phoneNum.indexOf("-"));
}
if(MessageConstant.REGIONNUM.equals(qhPhone)){
phonenum = phoneNum.substring(phoneNum.indexOf("-")+1);
}else{
phonenum = phoneNum.replace("-", " ");
}
faxJob.setFile(new File(filePath));
faxJob.setPriority(FaxJobPriority.HIGH_PRIORITY);
faxJob.setTargetAddress("0,"+phonenum);
faxJob.setTargetName("");
faxJob.setSenderEmail("");
faxJob.setSenderName("發(fā)送者");
faxJob.setSenderFaxNumber("發(fā)送號");
faxClient.submitFaxJob(faxJob);
System.out.println("Fax job submitted,ID:"+faxJob.getID());
}
}
}
本文名稱:發(fā)送傳真代碼java接口 java接口傳文件
新聞來源:http://jinyejixie.com/article14/hpsdde.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、面包屑導(dǎo)航、網(wǎng)站策劃、網(wǎng)頁設(shè)計公司、品牌網(wǎng)站制作、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)