1. 程式人生 > >Flex:Openfire之SparkWeb開發環境搭建歷程分享

Flex:Openfire之SparkWeb開發環境搭建歷程分享

      春節後因專案需要,研究了把XMPP/Openfire,此前曾玩過spark,基於JAVA寫的客戶端,總覺得用Swing做的介面比較醜,作為IM客戶端執行效率也不行(做個ERP,深有感觸)。無意間發現Openfire客戶端還有一個基於Flex的實現,那就是SparkWeb,太棒了,正好這段時間一直在用Flex寫微部落格戶端,趕緊搭環境吧,這個過程,可真是一波三折,聽我慢慢道來。

     首先是SparkWeb開源專案與其引用庫專案的版本問題,老匹配不上,官網只提供了一個svn庫,說明文件少的可憐,唯有自己瞎摸吧,這裡說一下,遇到問題,Google真是個好東西,不愧是網際網路老大,Google一下,啥都能知道。下面把問題和解決方法列一下,讓和我一樣的朋友少走些彎路,也省點摸索時間。

    1) 各專案的版本問題。要搭建SparkWeb開發環境,需要配置4個專案,SparkWeb,SparkWebCommonComponents,SparkWebCore,XIFF,其中第1個是程式入口,2,3,4是引用的庫專案。

第1,2,3個專案使用http://svn.igniterealtime.org/svn/repos/sparkweb/branches/soc08 這個分支的程式碼,

第4個專案使用http://svn.igniterealtime.org/svn/repos/xiff/branches/summer_of_code_2008 這個分支程式碼,

特別說明:如果都使用主幹程式碼,程式跑不起來,會報socket異常(呆會把異常貼上上來)

   2) Flex Sdk 版本:需要使用Flex3.5版本,不能使用Flex4.0以上版本,也不能選用4.0版本,勾選相容3.5模式,否則啟動異常;

   3) Flex Web應用除錯時需要使用IE作為預設瀏覽器,其他瀏覽器好像有問題,而修改預設瀏覽器需要修改登錄檔,具體請百度搜索如何修改預設瀏覽器。修改完預設瀏覽器後,啟動除錯會提示沒找到flashplayer_debug器,按照提示進入Adobe網站下載flashplayer_10_ax_debug.exe,進入安全模式安裝(這點很重要,否則安裝失敗),安裝完後可以正常啟動除錯了。

   4) 以上分支的程式碼需要作些修改,否則取_node時會報空物件引用 (老外寫程式碼也不嚴謹啊~~)

     /XIFF/src/org/jivesoftware/xiff/core/AbstractJID.as

    public function get node():String 

    {

        if(_node !=null  && _node.length > 0) //這裡如果不判斷為空,用IP地址登入會報錯

        return _node;

            return null;

    }

 5) 登出登入的程式碼沒寫,從主幹程式碼新增過去。

/**

* Add by winters_huang @Ver0.9.0

* */

public static function logout():void

{

// We may want to implement a way to logout without restarting the entire application (especially for SparkAir). SW-73

// All of the managers would deinitialize and unregister their event listeners. Then SparkWeb would show its login dialog.

connectionManager.logout();

}

  6) 關於Openfire伺服器的系統屬性 xmpp.domain

      由於配置Openfire伺服器都是每一個步驟都是預設的,導致後來使用IP地址在SparkWeb訪問時報伺服器域名與訪問地址不一致問題,Google一下發現可以修改Openfire的系統屬性(AdminConsole可以修改),將此值改為具體的IP值,如果不用域名,會導致問題(4),修改程式碼解決;

  7) SparkWebCommonComponents 專案的assets 目錄下的images用了快捷方式形式,在Windows系統下不好使,需要把http://svn.igniterealtime.org/svn/repos/sparkweb/branches/soc08/assets 的image 目錄拷貝過來。

 

 

相關推薦

FlexOpenfireSparkWeb開發環境搭建歷程分享

      春節後因專案需要,研究了把XMPP/Openfire,此前曾玩過spark,基於JAVA寫的客戶端,總覺得用Swing做的介面比較醜,作為IM客戶端執行效率也不行(做個ERP,深有感觸)。無意間發現Openfire客戶端還有一個基於Flex的實現,那就是Spark

Ubuntu 16.04系統 java開發環境搭建

nag AR con star inux username oca 生效 位操作 在Ubuntu 16.04(我的是64位操作系統)上搭建java開發環境: 事前準備:jdk、tomcat、eclipse、mysql jdk安裝配置: 我選擇的是jdk版本為1.8:安裝包位

【AR】Vuforiaunity3d 開發環境搭建

AR Vurforia 一、Unity3d環境搭建 下載安裝包地址:https://developer.vuforia.com/downloads/sdk Download for Android Download for iOS Download for UWP Download Unity Ext

GDAL空間資料處理100講[01]GDAL的Python開發環境搭建

GDAL空間資料處理100講[01]:GDAL的Python開發環境搭建 作者:胡佳輝 2018年11月12日 本文原發於"衛星遙感大資料"公眾號,歡迎關注!如有興趣,歡迎加入"衛星遙感大資料"QQ群(877631590)或者加我微信(cddennishu)進"衛星遙感大資料"微信群。

FlutterWindows開發環境搭建

前言 RN出現時,沒有去詳細的學習。現在Flutter正式版出來了,好好的研究下。本文主要介紹在Windows環境下,搭建Flutter的各種坑。 開發環境 Windows 10 Android Studio 3.2.1 一加 5T 下載Flutter原始碼 主要參照Flutter

Go語言程式開發ARM開發環境搭建

參考文件 開發環境介紹 主機作業系統:Ubuntu14.04 64位 目標平臺:IMX.6 交叉工具鏈:arm-poky-linux-gnueabi,gcc4.8.2 Go版本:1.10.3 編譯時間:2018.8.27 編譯Go編譯器(Hos

Redis學習系列二.Net開發環境搭建及基礎資料結構String字串

一、簡介 Redis有5種基本資料結構,分別是string、list(列表)、hash(字典)、set(集合)、zset(有序集合),這是必須掌握的5種基本資料結構.注意Redis作為一個鍵值對快取系統,其所有的資料結構,都以唯一的key(字串)作為名稱,然後通過key來獲取對應的資料.  

axis2系列eclipse開發環境搭建

Axis2是目前比較流行的WebService 引擎。WebService 被應用在很多不同的場景。例如,可以使用 WebService 來發布服務端 Java 類的方法,以便使用不同的客戶端進行呼叫。這樣可以有效地整合多種 不同的技術來完成應用系統。 Axis2是一套嶄新

Linux學習筆記6linux C/C++開發環境搭建指南

Ubuntu中沒用自帶C/C++開發環境,需要使用者自己配置。在UBUNTU中文論壇中的一些帖子集合。 一、安裝基本開發環境 本人想學習一下Linux下的C,C++程式開發,這幾天一直在研究Linux下的C語言編譯環境的建立,因為新裝好的Ubuntu裡面缺少函式庫檔案

PX4開發(1)ubuntu下pixhawk開發環境搭建

1. 介紹 之前買了個330的四軸,最近想利用起來,所以買了個pixhawk來玩。pixhawk是開源的,所以想看看能不能在其基礎上開發出什麼。 要做開發首先要配置環境,由於官方推薦在linux環境下開發,所以這裡介紹ubuntu下pixhawk的開發環境配

JRtplib開發筆記(四)JRtplib的VS開發環境搭建以及Demo

原博主部落格地址:https://blog.csdn.net/qq21497936 本文章部落格地址:https://blog.csdn.net/qq21497936/article/details/84957708 《JRtplib開發筆記(一):JRtplib簡介、JThread庫編譯》

總結——stm32keil開發環境搭建

1.搭建需要的檔案 2.搭建步驟 (1)首先建資料夾Project_STM32,然後在此資料夾中新建子資料夾: Hardware :外圍模組驅動程式 Libraries:驅動庫檔案 Listin

Electron程式開發Windows開發環境搭建

參考文件 開發環境介紹 主機作業系統:Windows7 Python版本:Python 2.7.12 node版本:v8.9.3 npm版本:v5.5.1 cnpm版本:v6.0.0 Electron版本:v2.0.7 提示: *

DE1-SOC入門Linux開發環境搭建

入手DE1-SOC這塊FPGA也有兩三個月了,將友晶提供的入門學習例程、程式碼等摸索了一下,感覺正常的fpga和arm之間的通訊、控制已經沒多大問題了。可是很多時候,事情沒有自己想的那麼簡單。現在接手的專案,實時性略高(不是相當高的那種,延遲的1、2ms還是能接受的),對a

stm32keil開發環境搭建

    只要按照下面的一步步來,絕對能從0開始建立一個STM32工程。不僅包括工程建立過程,還有Jlink設定方法。本文使用晶片為STM32F103CB。 1 下載stm32F10x的官方庫 2 新建工程 工程名設為stm32_demo,選擇晶片型號為STM32

Electron程式開發Ubuntu開發環境搭建

參考文件 開發環境介紹 主機作業系統:Ubuntu16.04 LTS 64-bit Python版本:Python 2.7.12 node版本:v8.9.3 npm版本:v5.5.1 cnpm版本:v6.0.0 Electron版本:v2.0.7

我的android studio開發環境搭建歷程(一部辛酸史)

android開發愈演愈烈,本人也想湊下熱鬧,首先要過的就是要搭建android開發環境這一關,本來我用eclipse挺順的,不過參考網上的評論,感覺還是親兒子好,所以決定切換到android studio,簡稱as。 其實網上有很多文章可以參考,但是自己動起手來才發現沒有那麼簡單啊,簡直是虐心啊。。。 第

Golang 學習路一開發環境搭建

Golang 學習:開發環境搭建 一、下載適合本機的Golang版本 注意對應好自己PC 的system. Windows 直接下載對應的msi安裝即可,Linux注意發行版本。 本文L

[原創]ObjectARX開發環境搭建VS2010+ObjectARX2012Wizard+Addin工具條問題修復

系統 右鍵 9.png line cls sid 新建 使用 開發環境 目前ObjectARX版本越來越高,也越來越簡化開發,如果需要同時開發低版本和高版本的ARX程序,就需要搭建批量編譯環境,以滿足ARX開發的需要。 批量編譯的搭建網絡上已經有了很多的教程,基本上都是基於

Vulkan Tutorial 01 開發環境搭建Windows

異常 方案 party return info auto 行程 while nload 操作系統:Windows8.1 顯卡:Nivida GTX965M 開發工具:Visual Studio 2017 相信很多人在開始學習Vulkan開發的起始階段都會在開發環境的配置上