<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-109  評論-187  文章-25  trackbacks-0
     
     

    最近測試OMADM1.2的時候,039040兩個case是關于TLS SSL的,搞的很迷惑,最近看了一下原來TLS幾乎就是SSL,基本上一摸一樣而已。

    Sun.com上面看到

    SSL was developed by Netscape in 1994, and with input from the Internet community, has evolved to become a standard. It is now under the control of the international standards organization, the Internet Engineering Task Force (IETF). The IETF has renamed SSL to Transport Layer Security (TLS), and released the first specification, version 1.0, in January 1999. TLS 1.0 is a modest upgrade to the most recent version of SSL, version 3.0. The differences between SSL 3.0 and TLS 1.0 are minor.

     

    所以這2case基本上測試一個就足夠了。

    另外tls本來就是傳輸層上的一個協議,所以要是用HTTPS的話,如果你用應用服務器,比如TOMCAT WBLOGIC,他們都支持SSL,根本不需要程序實現任何東西,只要你會使用keytool生成證書就可以了。

     

    這塊只是牽扯到JSSE,具體可以到http://java.sun.com/j2se/1.4.2/docs/guide/security/jsse/JSSERefGuide.html#Introduction

    Keytool其實再JRE/LIB/SECUTITY下面的包里面,

    C:\j2sdk1.4.2_05\jre\lib\security>keytool

    keytool 用法:

     

    -certreq     [-v] [-alias <alias>] [-sigalg <sigalg>]

                 [-file <csr_file>] [-keypass <keypass>]

                 [-keystore <keystore>] [-storepass <storepass>]

                 [-storetype <storetype>] [-provider <provider_class_name>] ...

     

    -delete      [-v] -alias <alias>

                 [-keystore <keystore>] [-storepass <storepass>]

                 [-storetype <storetype>] [-provider <provider_class_name>] ...

     

    -export      [-v] [-rfc] [-alias <alias>] [-file <cert_file>]

                 [-keystore <keystore>] [-storepass <storepass>]

                 [-storetype <storetype>] [-provider <provider_class_name>] ...

     

    -genkey      [-v] [-alias <alias>] [-keyalg <keyalg>]

                 [-keysize <keysize>] [-sigalg <sigalg>]

                 [-dname <dname>] [-validity <valDays>]

                 [-keypass <keypass>] [-keystore <keystore>]

                 [-storepass <storepass>] [-storetype <storetype>]

                 [-provider <provider_class_name>] ...

     

    -help

     

    -identitydb [-v] [-file <idb_file>] [-keystore <keystore>]

                 [-storepass <storepass>] [-storetype <storetype>]

                 [-provider <provider_class_name>] ...

     

    -import      [-v] [-noprompt] [-trustcacerts] [-alias <alias>]

                 [-file <cert_file>] [-keypass <keypass>]

                 [-keystore <keystore>] [-storepass <storepass>]

                 [-storetype <storetype>] [-provider <provider_class_name>] ...

     

    -keyclone    [-v] [-alias <alias>] -dest <dest_alias>

                 [-keypass <keypass>] [-new <new_keypass>]

                 [-keystore <keystore>] [-storepass <storepass>]

                 [-storetype <storetype>] [-provider <provider_class_name>] ...

     

    -keypasswd   [-v] [-alias <alias>]

                 [-keypass <old_keypass>] [-new <new_keypass>]

                 [-keystore <keystore>] [-storepass <storepass>]

                 [-storetype <storetype>] [-provider <provider_class_name>] ...

     

    -list        [-v | -rfc] [-alias <alias>]

                 [-keystore <keystore>] [-storepass <storepass>]

                 [-storetype <storetype>] [-provider <provider_class_name>] ...

     

    -printcert   [-v] [-file <cert_file>]

     

    -selfcert    [-v] [-alias <alias>] [-sigalg <sigalg>]

                 [-dname <dname>] [-validity <valDays>]

                 [-keypass <keypass>] [-keystore <keystore>]

                 [-storepass <storepass>] [-storetype <storetype>]

                 [-provider <provider_class_name>] ...

     

    -storepasswd [-v] [-new <new_storepass>]

                 [-keystore <keystore>] [-storepass <storepass>]

                 [-storetype <storetype>] [-provider <provider_class_name>] ...

     

     

    1:生成一個

    C:\j2sdk1.4.2_05\jre\lib\security>keytool -genkey -alias duke -keyalg RSA   -val

    idity 10 -storetype jks -keystore trust1.jks

    2:查看你剛才生成的證書

    C:\j2sdk1.4.2_05\jre\lib\security>keytool -list -v -keystore trust1.jks

    當然要輸入密碼了。

    但是我不太明白服務器需要2個證書1個是custom identity keystore 一個是custom trust keystore為什么2 的輸入類型不一樣,一個是KeyEntry另外一個是trustedCertEntry,這個流程到底是怎樣的?申請證書->導入證書 還是不明白,請指教。

    posted @ 2007-07-04 17:43 小小程序程序員混口飯吃 閱讀(1987) | 評論 (1)編輯 收藏
         摘要: 最近復習了一下AXIS,寫了2個小例子1:  bean  1package test.soap.vo; 2 3import java.io.Serializable; 4 5public class User implements Serializable {&nbs...  閱讀全文
    posted @ 2007-06-15 15:48 小小程序程序員混口飯吃| 編輯 收藏

    Java對象序列化學習筆記- -

                                          

    beejoy 原創  來源:java研究組織


    目前網絡上關于對象序列化的文章不少,但是我發現詳細敘述用法和原理的文章太少。本人
    把自己經過經驗總結和實際運用中的體會寫成的學習筆記貢獻給大家。希望能為整個java社
    區的繁榮做一點事情。
     
    序列化的過程就是對象寫入字節流和從字節流中讀取對象。將對象狀態轉換成字節流之后,
    可以用java.io包中的各種字節流類將其保存到文件中,管道到另一線程中或通過網絡連接
    將對象數據發送到另一主機。對象序列化功能非常簡單、強大,在RMI、Socket、JMS、EJB
    都有應用。對象序列化問題在網絡編程中并不是最激動人心的課題,但卻相當重要,具有
    許多實用意義。
    一:對象序列化可以實現分布式對象。主要應用例如:RMI要利用對象序列化運行遠程主機
    上的服務,就像在本地機上運行對象時一樣。
    二:java對象序列化不僅保留一個對象的數據,而且遞歸保存對象引用的每個對象的數據。
    可以將整個對象層次寫入字節流中,可以保存在文件中或在網絡連接上傳遞。利用對象序
    列化可以進行對象的"深復制",即復制對象本身及引用的對象本身。序列化一個對象可能
    得到整個對象序列。
     
    從上面的敘述中,我們知道了對象序列化是java編程中的必備武器,那么讓我們從基礎開始
    ,好好學習一下它的機制和用法。


    java序列化比較簡單,通常不需要編寫保存和恢復對象狀態的定制代碼。實現java.io.Seri
    alizable接口的類對象可以轉換成字節流或從字節流恢復,不需要在類中增加任何代碼。只
    有極少數情況下才需要定制代碼保存或恢復對象狀態。這里要注意:不是每個類都可序列化,
    有些類是不能序列化的,例如涉及線程的類與特定JVM有非常復雜的關系。

    序列化機制:

    序列化分為兩大部分:序列化和反序列化。序列化是這個過程的第一部分,將數據分解成字
    節流,以便存儲在文件中或在網絡上傳輸。反序列化就是打開字節流并重構對象。對象序列
    化不僅要將基本數據類型轉換成字節表示,有時還要恢復數據。恢復數據要求有恢復數據的
    對象實例。ObjectOutputStream中的序列化過程與字節流連接,包括對象類型和版本信息。
    反序列化時,JVM用頭信息生成對象實例,然后將對象字節流中的數據復制到對象數據成員中。
    下面我們分兩大部分來闡述:


    處理對象流:
    (序列化過程和反序列化過程)


    java.io包有兩個序列化對象的類。ObjectOutputStream負責將對象寫入字節流,ObjectInp
    utStream從字節流重構對象。
        我們先了解ObjectOutputStream類吧。ObjectOutputStream類擴展DataOutput接口。
    writeObject()方法是最重要的方法,用于對象序列化。如果對象包含其他對象的引用,則
    writeObject()方法遞歸序列化這些對象。每個ObjectOutputStream維護序列化的對象引用表,
    防止發送同一對象的多個拷貝。(這點很重要)由于writeObject()可以序列化整組交叉引用的
    對象,因此同一ObjectOutputStream實例可能不小心被請求序列化同一對象。這時,進行反引用
    序列化,而不是再次寫入對象字節流。
    下面,讓我們從例子中來了解ObjectOutputStream這個類吧。

    // 序列化 today's date 到一個文件中.
        FileOutputStream f = new FileOutputStream("tmp");
        ObjectOutputStream s = new ObjectOutputStream(f);
        s.writeObject("Today");
        s.writeObject(new Date());
        s.flush();


     
    現在,讓我們來了解ObjectInputStream這個類。它與ObjectOutputStream相似。它擴展Dat
    aInput接口。ObjectInputStream中的方法鏡像DataInputStream中讀取Java基本數據類型的
    公開方法。readObject()方法從字節流中反序列化對象。每次調用readObject()方法都返回
    流中下一個Object。對象字節流并不傳輸類的字節碼,而是包括類名及其簽名。readObject()
    收到對象時,JVM裝入頭中指定的類。如果找不到這個類,則readObject()拋出
    ClassNotFoundException,如果需要傳輸對象數據和字節碼,則可以用RMI框架。
    ObjectInputStream的其余方法用于定制反序列化過程。
    例子如下:

    //從文件中反序列化 string 對象和 date 對象
        FileInputStream in = new FileInputStream("tmp");
        ObjectInputStream s = new ObjectInputStream(in);
        String today = (String)s.readObject();
        Date date = (Date)s.readObject();

     

    定制序列化過程:


    序列化通常可以自動完成,但有時可能要對這個過程進行控制。java可以將類聲明為serial
    izable,但仍可手工控制聲明為static或transient的數據成員。
    例子:一個非常簡單的序列化類。

    public class simpleSerializableClass implements Serializable{
        String sToday="Today:";
        transient Date dtToday=new Date();
    }


    序列化時,類的所有數據成員應可序列化除了聲明為transient或static的成員。將變量聲
    明為transient告訴JVM我們會負責將變元序列化。將數據成員聲明為transient后,序列化
    過程就無法將其加進對象字節流中,沒有從transient數據成員發送的數據。后面數據反序
    列化時,要重建數據成員(因為它是類定義的一部分),但不包含任何數據,因為這個數據
    成員不向流中寫入任何數據。記住,對象流不序列化static或transient。我們的類要用
    writeObject()與readObject()方法以處理這些數據成員。使用writeObject()與readObject()
    方法時,還要注意按寫入的順序讀取這些數據成員。
    關于如何使用定制序列化的部分代碼如下:

    //重寫writeObject()方法以便處理transient的成員。
    public void writeObject(ObjectOutputStream outputStream) throws IOException{
        outputStream.defaultWriteObject();//使定制的writeObject()方法可以
                            利用自動序列化中內置的邏輯。
        outputStream.writeObject(oSocket.getInetAddress());
        outputStream.writeInt(oSocket.getPort());
    }
    //重寫readObject()方法以便接收transient的成員。
    private void readObject(ObjectInputStream inputStream) throws
    IOException,ClassNotFoundException{
        inputStream.defaultReadObject();//defaultReadObject()補充自動序列化
        InetAddress oAddress=(InetAddress)inputStream.readObject();
        int iPort =inputStream.readInt();
        oSocket = new Socket(oAddress,iPort);
        iID=getID();
        dtToday =new Date();
    }

     

    完全定制序列化過程:

    如果一個類要完全負責自己的序列化,則實現Externalizable接口而不是Serializable接口
    。Externalizable接口定義包括兩個方法writeExternal()與readExternal()。利用這些方
    法可以控制對象數據成員如何寫入字節流.類實現Externalizable時,頭寫入對象流中,
    然后類完全負責序列化和恢復數據成員,除了頭以外,根本沒有自動序列化。這里要注意了。
    聲明類實現Externalizable接口會有重大的安全風險。writeExternal()與readExternal()
    方法聲明為public,惡意類可以用這些方法讀取和寫入對象數據。如果對象包含敏感信息,
    則要格外小心。這包括使用安全套接或加密整個字節流。到此為至,我們學習了序列化的
    基礎部分知識。關于序列化的高級教程,以后再述。

    posted @ 2007-06-08 13:39 小小程序程序員混口飯吃 閱讀(972) | 評論 (1)編輯 收藏
    CMWAP 和 CMNET 只是中國移動人
    為劃分的兩個GPRS接入方式。前者是為手機WAP上網而設立的,后者則主要是為PC、筆記
    本電腦、PDA等利用GPRS上網服務。它們在實現方式上并沒有任何差別,但因為定位不同
    ,所以和CMNET相比,CMWAP便有了部分限制,資費上也存在差別。

    WAP只是一種GPRS應用模式,它與GRPS的接入方式是無關的。WAP應用采用的實現方
    式是“終端+WAP網關+WAP服務器”的模式,不同于一般Internet的“終端+服務器”
    的工作模式。主要的目的是通過WAP網關完成WAP-WEB的協議轉換以達到節省網絡流量和
    兼容現有WEB應用的目的。WAP網關從技術的角度講,只是一個提供代理服務的主機,它
    不一定由網絡運營商提供。但據我所知,中國移動GPRS網絡目前只有唯一的一個WAP網關
    :10.0.0.172,有中國移動提供,用于WAP瀏覽(HTTP)服務。有一點需要注意,WAP網
    關和一般意義上的局域網網關是有差別的,標準的WAP網關僅僅實現了HTTP代理的功能,
    并未完成路由、NAT等局域網網關的功能。這就決定了它在應用上所受到的限制。

    為了從應用中區別兩者的定位,中國移動對CMWAP作了一定的限制,主要表現在CMW
    AP接入時只能訪問GPRS網絡內的IP(10..*),而無法通過路由訪問Internet。我們
    用CMWAP瀏覽Internet上的網頁就是通過WAP網關協議或它提供的HTTP代理服務實現的。
    也就是需要通過中國移動GPRS網絡唯一的一個WAP網關:10.0.0.172。CMNET擁有完全的
    Internet訪問權,這里就不多說了,主要讓我們來看看CMWAP。因為有了上面提到的限制
    ,CMWAP的適用范圍就要看WAP網關所提供的支持了。目前,中國移動的WAP網關對外只提
    供HTTP代理協議(80和8080端口)和WAP網關協議(9201端口)。

    因此,只有滿足以下兩個條件的應用才能在中國移動的CMWAP接入方式下正常工作:
    1. 應用程序的網絡請求基于HTTP協議。2. 應用程序支持HTTP代理協議或WAP網關協議。
    而cmnet則不受任何的限制。

    說白了就是說通過cmwap的方式訪問,需要走中國移動的網關通過http協議去連接,
    這樣的后果就是速度會變慢,相信很多朋友都用過代理服
    務器吧,對,就是那個感覺,而通過cmnet來連接的,就是直接連接到無限乾坤在inter
    net上的服務器,速度會比cmwap的快一些。說完了速度,就該說價格了,如果玩家沒有
    采用套餐的話,那cmwap和cmnet都是一樣的,1kb三分錢,或者訂了一個xx元包xM的套餐
    ,超出部分1k一分錢,這種時候,同等價格都一樣,據我了解,cmwap版本流量會大一些
    ,所以還是用cmnet比較好,又快又省錢。但是對于很多地方的動感地帶用戶而言,情況
    可能有些不同,相當一些地方的動感地帶只能訪問cmwap,不能訪問cmnet,所以沒地選
    擇了,還有一些地方有動感地帶的包月上網卡,有10元、20元、50元的等等,具體的要
    看當地的資費政策了,而這些包月卡通常只包cmwap的流量,這個時候如果用cmnet還要
    另外付費,所以建議這些用戶還是使用cmwap吧。最后總結一下,如果玩家的手機卡只能
    訪問cmwap或者有cmwap包月的套餐,那么您就使用cmwap連接來游戲,否則使用cmnet連
    接是更好的選擇


    所以,一句話,有wap包月的地區就使用wap包月上網,沒有包月業務的就用cmnet,反正都是按流量算錢,為什么不選擇快一點的呢(但還是要提醒大家,按流量計費產生的費用是巨大的,要
    多多注意)
    posted @ 2007-05-17 10:50 小小程序程序員混口飯吃 閱讀(1982) | 評論 (0)編輯 收藏
    import java.io.BufferedReader;
    import java.io.DataOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.net.HttpURLConnection;
    import java.net.MalformedURLException;
    import java.net.URL;

    public class TestConn {

        
    public TestConn() {
            
    super();
        }


        
    public static void main(String[] args) throws Exception {
            String url 
    = null;
            getHttpText(url);
            System.out.println(
    "abc");
        }


        
    public static String getHttpText(String str) {
            URL url 
    = null;
            
    try {
                url 
    = new URL(str);
            }
     catch (MalformedURLException e) {
                e.printStackTrace();
            }

            HttpURLConnection huc 
    = null;
            
    try {

                huc 
    = (HttpURLConnection) url.openConnection();
                huc.setRequestMethod(
    "GET");
                huc.setRequestProperty(
    "Content-Type",
                        
    "application/vnd.syncml.dm+xml");
                
    // application/x-www-form-urlencoded
                
    // application/vnd.syncml.dm+xml
                huc.setDoOutput(true);
                huc.setRequestProperty(
    "Cache-Control""private");
                huc.setRequestProperty(
    "Accept-Charset""utf-8");
                huc.setRequestProperty(
    "Accept""application/vnd.syncml.dm+xml");
                huc.setRequestProperty(
    "Content-Length""3");
                DataOutputStream printout;
                printout 
    = new DataOutputStream(huc.getOutputStream());
                printout.writeBytes(
    "abc");
            }
     catch (IOException e) {
                e.printStackTrace();
            }

            InputStream is 
    = null;
            
    try {
                is 
    = huc.getInputStream();
            }
     catch (IOException e) {
                e.printStackTrace();
            }

            BufferedReader br 
    = new BufferedReader(new InputStreamReader(is));
            StringBuffer sb 
    = new StringBuffer();
            String line 
    = "";
            
    try {
                
    while ((line = br.readLine()) != null{
                    sb.append(line).append(
    "\n");
                }

            }
     catch (IOException e) {
                e.printStackTrace();
            }

            
    return sb.toString();
        }


    }

    posted @ 2007-05-14 09:16 小小程序程序員混口飯吃 閱讀(4068) | 評論 (0)編輯 收藏
    記事本=notepad
    計算器=calc
    注冊表=regedit
    系統檢測=dxdiag
    畫圖=mspaint
    遠程桌面=mstsc
    posted @ 2007-04-29 17:27 小小程序程序員混口飯吃 閱讀(493) | 評論 (1)編輯 收藏
     其實這個問題不是程序的問題,主要是property中文問題,這個問題可以通過build解決掉

     <native2ascii src="." dest="build" includes="*Props.txt" />
    把配置文件編碼 windows下默認GBK編碼,linux 要加encoding
    代碼一行不用改,放心漢化吧~~
    posted @ 2007-04-24 15:21 小小程序程序員混口飯吃 閱讀(1933) | 評論 (3)編輯 收藏
    如題,有沒有朋友知道開源的在線圖片處理的程序,在頁面上直接處理圖片,有點象iephotoshop,功能即使不如imageJ,也要有一些基本的功能.
    posted @ 2007-04-19 09:20 小小程序程序員混口飯吃 閱讀(2092) | 評論 (2)編輯 收藏
    話說“你不理財,財不理你”

    那么什么是理財呢???

    很多人都很知道“理財”,也都無時無刻不在理財,但把理財說清楚的人卻不多...

    很多人說到理財想到的就是投資,就是開源節流,就是合理分配財產,等等… …

    其實,
    ---------------------------------------------------------
    理財就是對財富的有效管理。

    理財的內涵很廣,包括開源節流,包括合理分配財產,包括投資增值等,但又不止于這些。從理財的基礎理論來講,主要包括:現金管理、資產管理、債務管理、風險管理、投資管理等等。
    ---------------------------------------------------------
    現金管理是理財的基礎。包括各項收入的籌劃和管理,包括各項稅費的管理,包括各項日常支出的管理,包括現金的積累和短期儲蓄等等。具體的管理工具和形式有各式各樣的銀行卡片,各式各樣的儲蓄方式,各種各樣的支出方式,包括各種各樣的節儉手段等等。

    資產管理是理財的重心。資產具體包括固定資產、流動資產等。固定資產比如房產、鋪面等等,流動資產包括儲蓄資產、投資資產、保險資產等。資產管理是家庭理財的重點,合理有效的管理需要。

    債務管理是理財的關鍵。債務并非完全的壞事,合理的管理債務是迅速達到理財目標的捷徑,只要把債務控制在一定的合理的范圍之內,對優化財務結構有很好的作用。比如在財力許可的情況下可以通過按揭提前實現高品質的家庭生活,通過金融信用延遲支付貨款往來等,從而更快實現財務目標。

    風險管理是理財的關鍵。有效的風險管理是現代社會先進的標志,沒有對風險的管理交通工具不能上路運營,貿易貨運不能出門出海流通,商場大廈無法入住營業,流動性和小家化也決定個人進行風險管理是大勢所趨。

    投資管理是理財的要點。現在很多對投資理財非常渴望,一提到投資賺錢眼睛就發亮,主要是因為目前我國金融環境不夠完善,安全穩健的大眾投資品種非常匱乏,很多人的收益局限于2個點以內,相較于去年初高達5個點的通貨膨脹顯然是一個很大的威脅。而國內居民的投資信息和能力先天不足,稍有異動即可能遭遇陷阱的現狀導致國民儲蓄逐年逼高。在理財范疇內投資增值是最需要專業知識的,也是實現家庭理財目標最關鍵的步驟。所以如何實現投資的有效管理就很重要。


    總之,理財就是所有與財富有關的活動的總稱,是現代社會重要的組成要素,是現代人過上幸福快樂生活必備的基本素質。

    而且,五個理財的基本方面也是互相關聯,互為制約,相互促進的。

    posted @ 2007-02-13 11:07 小小程序程序員混口飯吃 閱讀(358) | 評論 (0)編輯 收藏

    ???????????

    做為新一代 3G 及移動終端浪潮的設備管理平臺, OMA DM 技術獲得了眾多設備廠商和運營商的追捧,也為軟件開發商提供新的崛起機會。業內目前也有不少工作在做這方面的軟件。好多公司這方面的產品都是基于Sync4J開發的。

    Sync4J 開源項目為我們提供了完整的 OMA DM 1.1.2 規范的 Java 實現。本文記錄了 Sync4J DM Server 安裝以及使用SCTS模擬器來模擬手機做一個DM業務,本文沒有用PPG來通過短信方式來用真手機來做,只是用模擬器來做的。SCTSOMA官方提供的一個測試工具,主要用來測試DMserver的,這里我們用來測試Sync4JSync4JSCTS的集合是我們學習OMA的一個很好的方式。

    1 :用到以下工具。

    ? Oracle9i

    ? jboss-3.2.3

    ? sync4j-server-dm-1.4.9?? sync4j 官方有下載

    ? SCTS_DeviceManagement_v1.12.zip? OMA 官方網站有下載。

    ?

    ?

    2 :安裝調試

    ? 2.1 解壓文件:

    ?? jboss-3.2.3 解壓到 C:\jboss-3.2.3

    sync4j-server-dm-1.4.9 解壓到 D:\sync4j\all\server-dm .

    直接安裝 SCTS.

    ? 2.2 配置環境變量

    ? JAVA_HOME=

    ? J2EE_HOME= C:\jboss-3.2.3

    ? SYNCSERVER_HOME= D:\sync4j\all\server-dm

    2.3 修改SYNCSERVER_HOME下的幾個配置文件

    ? ?SYNCSERVER_HOME\ default\config\common\properties\ Sync4j.properties

    把第一行改為 server.uri=http://your IP:8080/sync4j-dm/dm

    ? SYNCSERVER_HOME\ install.properties 改為

    (1)server-name=http://10.150.4.7:8080/sync4j-dm/dm

    ?(2) oracle 的數據庫,以下是用來連接數據庫的,所以一定要配置正確。

    jdbc.classpath=C:\\jboss-3.2.3\\server\\all\\lib\\ojdbc14.jar

    jdbc.driver=oracle.jdbc.driver.OracleDriver

    jdbc.url=jdbc:oracle:thin:@11.11.11.11:1521:abc

    jdbc.user=sync4j

    jdbc.password=sync4j

    2 4以上都做完后用Sync4j自己帶的安裝腳本安裝sync4j dm server

    SYNCSERVER_HOME 下運行 bin\install.cmd jboss32

    2 5由于這個版本存在了一個bug,所以在2.4做完后要修改

    SYNCSERVER_HOME\bin\start.cmd

    把倒數第三行 call\run.bat -c sync4j 改為

    call %J2EE_HOME%\bin\run.bat -c sync4j

    2 6 SYNCSERVER_HOME 運行 bin\start.cmd安裝

    所有程序到安裝到了 jboss_home 下了,可以到 JBOSS_HOME\ server\sync4j 就可以看到了,看一下你的 oralce 庫里面也初始化了數據,表也建好了。

    ?

    2 7 添加一個手機(我們其實是個模擬器)上來

    http://your ip:8080/dmdemo/jsp/addDevice.jsp 填寫一個 IMEI:111111111111111,

    ?

    2 8 配置scts

    Add device : IMEI:111111111111111 然后點 apply

    點擊 DM Account

    Name sync4j

    Server:sync4j

    Con : 不用填寫

    Address http://your ip /sync4j-dm/dm

    Port :8080

    Server authentication:

    ? Digest : 找數據庫用 sync4j 的數據庫中, sycn4j_device 表中 :IMEI:111111111111111 server password 為: srvpwd, 把這個 password 填寫到 password 中。

    Client authentication

    ?? DIGEST: USER NAME: sync4j PASSWORD: sync4j

    Add 就可以了

    然后點 connect 連一下 DM SERVER 看看能否連上。 第一次一般會出現認證錯我,接著再聯一次就可以了, SCTS 有日志可以查看。

    ?

    如果連通了那下面就來做一個采集模擬器上的一個節點吧。

    ?

    http://your ip:8080/dmdemo/index.html

    device id IMEI:111111111111111 login

    1.JPG

    ?

    ? 然后點擊 add to operation list

    2.JPG

    然后用 SCTS 主動回聯一下,看看 server 能夠拿到這個節點的值

    3.JPG

    你會看到 6 message !!!

    詳細看一下這 6 message 你會發現,這個節點的采集已經成功了!

    ?

    ?

    ?

    ?

    posted @ 2007-02-05 10:02 小小程序程序員混口飯吃 閱讀(9293) | 評論 (11)編輯 收藏
    僅列出標題
    共11頁: 上一頁 1 2 3 4 5 6 7 8 9 下一頁 Last 
    主站蜘蛛池模板: 在线免费观看毛片网站| 亚洲人成网亚洲欧洲无码| 免费看无码特级毛片| 久久久久亚洲AV成人网人人软件| 美女尿口扒开图片免费 | 亚洲成?v人片天堂网无码| 亚洲AV无码精品国产成人| 日韩激情无码免费毛片| 亚洲色偷偷综合亚洲av78| 免费视频淫片aa毛片| 国产亚洲精品AAAA片APP| 日本免费人成黄页在线观看视频 | 亚洲精品视频免费在线观看| 久久精品国产亚洲AV无码麻豆| 鲁大师在线影院免费观看 | 日本道免费精品一区二区| 久久久久久久综合日本亚洲| 久久久久久久99精品免费观看| 亚洲福利在线观看| xxxxx免费视频| 亚洲视频无码高清在线| 日韩高清免费在线观看| 黄页视频在线观看免费| 亚洲综合区小说区激情区| 三级网站在线免费观看| 亚洲国产精品久久久久网站| 最近中文字幕电影大全免费版| 亚洲人成免费网站| 成人免费淫片在线费观看| 国产精品亚洲天堂| 亚洲欧洲国产成人综合在线观看| 好男人资源在线WWW免费| 免费黄网站在线观看| 亚洲毛片在线观看| 欧洲乱码伦视频免费| 亚洲精品乱码久久久久久蜜桃图片| 国产免费人视频在线观看免费| 深夜福利在线视频免费| 国产∨亚洲V天堂无码久久久| 免费无码毛片一区二区APP| 久久精品国产亚洲αv忘忧草|