2014年11月13日 星期四

GCM Server

GCM Server需加入json-simple-1.1.1.jar

Reference: http://stackoverflow.com/questions/11346180/servlet-java-lang-classnotfoundexception-org-json-simple-parser-parseexception

2014年4月13日 星期日

使用Eclipse架設REST風格的Web service(一)

P.S. 64bit/32bit 選擇需一致

Eclipse選擇有Dynamic Web Project的版本(Ex:Java EE Juno)

JDK選擇7版本以上

Tomcat選擇非安裝類型的7.x版本

為了讓Tomcat正常運作必須先至電腦裡的環境變數設定

新增系統變數:變數名稱及變數值(若變數已存在便在變數值以分號隔開路徑)

1.CATALINA_HOME=>c:\apache-tomcat-7.0.53
2.JAVA_HOME=>C:\Program Files\Java\jdk1.7.0_51
3.TOMCAT_HOME=>c:\apache-tomcat-7.0.53
4.PATH=>%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
5.Classpath=>%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;
%JAVA_HOME%\lib\tools.jar;%TOMCAT_HOME%\bin

設定完成後便可至命令提示字元切換路徑至c:\apache-tomcat-7.0.53\bin

接著輸入service.bat install啟動服務

成功後測試本機ip與外部ip

若外部ip無法正常顯示則檢查IP分享器設定與防火牆設定

以上皆完成後換Eclipse的設定

Jersey 1.x 搭配 JAX-RS 1.x
Jersey 2.x 搭配 JAX-RS 2.x
2擇1

這邊是選擇Jersey 1.x 搭配 JAX-RS 1.x

先至Windows→Preferences→Server→Runtime Environments

Add一個Tomcat v7.0

再至Windows→Preferences→Java→Build Path→User Libaries

New一個給JAXRS用的Lib:jersey-bundle1.18.jar(Jersey 1.x)

接著創建一個Dynamic Web Project

Target runtime配置Tomcat v7.0

Configuration配置custom

再至修改按鈕內把JAX-RS項目打勾

專案建立完成後把asm-3.1.jar、jersey-bundle-1.18.jar、jsr311-api-1.1.1.jar

丟入專案裡的WebContent裡面的WEB-INF之下的lib資料夾

最後在web.xml的<load-on-startup>1</load-on-startup>這行之上添加

<init-param>
    <param-name>com.sun.jersey.config.property.resourceConfigClass</param-name>
    <param-value>com.sun.jersey.api.core.PackagesResourceConfig</param-value>
    </init-param>
    <init-param>
    <param-name>com.sun.jersey.config.property.packages</param-name>
    <param-value>jaxrs</param-value>
</init-param>

這裡配合src之下的packge name:jaxrs

最後測試程式碼

在packge之下new class

程式碼如下

package jaxrs;

import javax.ws.rs.GET;
import javax.ws.rs.Path;

@Path("/helloworld")
public class HelloWorldResource {
@GET
    public String sayHello() {
        return "Hello";
    }
}

開啟Eclipse的Server後至瀏覽器輸入

http://你的ip:8080/專案名稱/jaxrs/helloworld

便會回傳"Hello"

2014年4月12日 星期六

使用D-LINK之IP分享器架設伺服器

若要使伺服器能夠讓外部電腦取得伺服器的資料

需要解決兩個問題

1.WINDOWS防火牆問題

2.D-LINK之外部IP轉換

第一個問題可以至控制台→Windows防火牆→進階設定→輸入規則

對Apache http server(這裡可針對特定程式)之內容→進階→設定檔

勾選【網域】、【私人】、【公用】並套用即可解決

第二個問題可以利用內部IP:192.168.0.1進入D-LINK設定

設定D-LINK接收到HTTP的類別全部轉傳至本機電腦即可解決

2013年7月17日 星期三

[Lineage] 單機伺服器架設

需準備的相關軟體
1. Eclipse IDE for Java[選可以架Server的]
2. JDK
3. Lineage 3.52C client端遊戲程式
4. Lineage Server Source Code
5. MySQL 資料庫
6. Navicat 資料庫管理工具
7. TortoiseSVN

Step1
安裝JDK與Eclipse並且設定好JDK的Path(可參考此篇Path設定)

Step2
安裝TortoiseSVN

Step3
新增資料夾,並對其資料夾按右鍵選擇TortoiseSVN→Export
並至L1j-tw開發團隊複製URL貼至Export的URL
便會開始下載ServerSourceCode

Step4
打開Eclipse並新建一個Java Project,成功建起後把剛下載的SourceCode覆蓋至此Java Project
Java Project會存放至Eclipse資料夾底下的workspace資料夾裡
而workspace可從Eclipse IDE的File→switch workspace→other查看

Step5
覆蓋後至Eclipse IDE的PackageExplorer找到剛創的Java Project對其右鍵選擇refresh
若有成功此專案底下會多出很多資料夾及檔案,接著對此專案作編碼設定
對此Java Project右鍵選擇Properties,Resource裡的Text file encodine選擇UTF-8

Step6
在此Java Project裡找到build.xml對其右鍵Run As→Ant Build
接著找到config資料夾,打開server.properties檔案
並在URL=後面打上此行【jdbc:mysql://localhost/l1jdb?useUnicode=true&characterEncoding=utf8】
Login與Password則輸入MySQL帳號密碼
設定完成如下:
URL=jdbc:mysql://localhost/l1jdb?useUnicode=true&characterEncoding=utf8
Login=你的MySQL帳號
Password=你的MySQL密碼

Step7
至workspace,進Java Project資料夾,可以看到maps資料夾,對352_maps.zip解壓縮

Step8
安裝MySQL、Navicat,記得MySQL自行設定的帳號密碼以及port number

Step9
先至SVN資料夾底下,進入db資料夾,點擊Pack_DB.bat,會產生l1jdb_Taiwan.sql
接著打開Navicat,新增MySQL連線,連線名稱可自訂,主機名稱輸入localhost
埠輸入MySQL顯示的port number,名稱及密碼也輸入MySQL設定的帳號密碼
可以按連線測試,正常會顯示連線成功
建立好後對其連線點擊右鍵新增資料庫名稱請給l1jdb
並對l1jdb點擊右鍵選擇開啟資料庫以及執行SQL檔案
把l1jdb_Taiwan.sql的位置開啟,按下開始

Step10
安裝Lineage 3.52C client端遊戲程式
下載登入器Login_v342
進入Login_v342\編碼器
打開Encode.exe
標籤列選擇[工具],天堂版本選擇351_S3DS2X,接著點擊變檔編碼
標籤列選擇[編碼],天堂版本選擇351_S3DS2X
允許多開、變身檔選擇S3DS2X.pak、內建喝水輔助程式打勾
接著按下按鈕編碼

Step11
進入Login_v342\編碼器
複製裡面的Login.cfg、Login.ini
以及進入Login_v342\登入器
複製裡面的Login.exe、eat.dll、LinHelperZ.txt、S3DS2X.bin、Microsoft.VC90.CRT、skin
貼至client端的遊戲程式內

Step12
把client端遊戲程式裡面的lin.lin移除
並至l1j-tw論壇申請會員並下載Lin.bin
把裡面的檔案丟置client端遊戲程式內

Step13
進入Login_v342\編碼器
執行spr_action,點擊運行後選擇S3DS2X後,便會產生spr_action.sql
再利用Navicat把spr_action.sql執行SQL檔案,把遇到錯誤繼續勾起

Step14
回client端遊戲程式內
執行eat.exe吃檔,吃完便可點擊Login.exe登入遊戲
進入遊戲前請先執行ServerStart.bat(位於Java Project資料夾內)

[Java] Path的設定

Step1
至官方oracle下載JDK,找尋對應的電腦種類與位元數版本

Step2
安裝JDK

Step3
完成安裝後,至安裝JDK的目錄夾底下可以找到bin子資料夾,進入並複製完整路徑

Step4
檢視系統內容(電腦=>右鍵=>點選內容=>系統設定),上面標籤列選至進階並點擊環境變數

Step5
下方系統變數欄位中找尋變數名稱為Path後,點擊編輯的按鈕,至變數值內貼上剛複製的路徑,並且用;號隔開原先的變數值