Javaã§ãæ°è»½ã«Webãµã¼ãã¹å ¬é!!JavaçGoogle App Engineã¨ã§ãããã¹ãStAXã§éãã§ã¿ã
ã¯ããã¾ãã¾ãéãã§ã¿ãã·ãªã¼ãºã§ãã
触ãã ã触ã£ã¦æ·±ãæãä¸ãã¦ãªãã®ã¯æéããªãã®ã¨é£½ãã£ã½ãæ§æ ¼ã ããã§ããã¾ãæ°ã«ãã¦ã¾ããã
ã£ã¦ãã¨ã§!!
ãStax Networksãã¨ããPaaSï¼ãµã¼ãã¹ã¨ãã¦ã®ãã©ãããã©ã¼ã ï¼ã®è©±ã§ãã
PaaSã¨ã¯ããã©ãããã©ã¼ã ä¸å¼ããµã¼ãã¹ã¨ãã¦æä¾ãããã¸ãã¹ã¢ãã«ã®ãã¨ã
ã¯ã©ã¦ãã³ã³ãã¥ã¼ãã£ã³ã°ã¨ãã¦ãã©ãããã©ã¼ã (ãµã¼ãç°å¢ãDatabaseãªã©)ããããã¯ã¼ã¯çµç±ã§å©ç¨è ã«æä¾ãããµã¼ãã¹ãããã¾ãããè¦ã¯Amazon S3ãGoogle App Engineã¿ãããªãµã¼ãã¹ã®ãã¨ã§ãã
Java対応のGoogle App Engineとも言うべき「Stax Networks」ローンチ
PaaSとは (Platform as a Service) 用語解説 | Impress Innovation Lab.
Jungle Java - Stax Networks はJavaアプリ対応のPaaS
ã§ãGoogle App Engineã§ã¯pythonãéçºè¨èªã¨ãã¦ãã¾ãããStAXã§ã¯Javaã使ãã¾ã!!
Javaã使ããã¬ã³ãµããæè¿å¢ãã¦ã¾ãããGAEã§Javaã使ããã¨ãèããã¨ãããããªã¨ããããæ±ãããµãããã§ãã
LLã«ããã¹ã¦ãµã¼ãã¹æä¾ã«ãããã¤ã³ãã©å¨ãã§æ·å± ãé«ãã£ãJavaã§ããããã®ãããªãµã¼ãã¹ãå©ç¨ãããã¨ã§ã容æã«ã¡ããã£ã¨ä½ã£ãWebãµã¼ãã¹ãªãããå ¬éã§ããããã«ãªãããã§ãã
ããããããããããããã!!
StAXã§ããã«ã¡ãä¸çããã¾ã§ããä»åã¯ãç´¹ä»ãã¾ããã奥ããã
ã¾ãã¯ã¢ã«ã¦ã³ããåå¾ãã¾ãããã
ãªã«ã¯ãªãã¨ãã¢ã«ã¦ã³ãã
ã¨ããªããä½ãã§ãã¾ããã
ä»ã®ã¨ããç¡åãªã®ã§ãæãããã³ããã¨ã£ã¦ãã¾ãã¾ããã!!
StAXのトップページã«ãã£ã¦ãçãä¸ã®ç°è²ã®ãApply for the Betaããã¿ã³ãã®ã£ãã¨æ¼ãã¾ãããã
æ°åãã§ããå¢ãã大äºã§ãã
Emailå ¥ãã¦ãSign Upããã¾ãããã
ãã°ããããã¨ã¡ã¼ã«ãæ¥ã¾ããæ¥ãã¾ã§ã¬ãã³ã§ããããã¯ã¬ãã³ã§ãã
èªåã¯ã¡ã¼ã«ãæ¥ãã¾ã§ï¼æ¥ã»ã©ãããã¾ãããã¨ã«ããã¬ãã³ã§ãã
å±ããã¡ã¼ã«ã«ã¯URLãæ¸ãã¦ããã®ã§ãããã«ã¢ã¯ã»ã¹ï¼ã¢ã¯ã»ã¹ã§ãã
ã¦ã¼ã¶åã¨e-mailããã¹ã¯ã¼ããç»é²ããã°ãã¢ã«ã¦ã³ãã®ä½æã¯å®äºã§ãã
ããã§ã¢ã«ã¦ã³ããã¢ã¯ãã£ãã¼ãããã¦ãã¢ããªã±ã¼ã·ã§ã³ãä½ããããã«ãªãã¾ãã
ãã£ãã!!
SDKãã¤ã³ã¹ã³ã
StAXã«ã¯ãã³ãã³ãã©ã¤ã³ã§ã¢ããªã±ã¼ã·ã§ã³ãä½ã£ãããããã¤ãããããSDKãæä¾ããã¦ã¾ãã®ã§ãã¤ã³ã¹ãã¼ã«ãã¾ããããã
ã¾ãã¯StAXã«ãã°ã¤ã³ãã¾ããããã¨ã管çç»é¢ã®ãããã«ããããã©ãããã°ãããæ¸ãã¦ããã¾ãã
SDKãã¤ã³ã¹ãã¼ã«ãããã¨ããã®ã§ãã®ã¨ããã«ãã¾ãã
ãStax SDKãã®ãªã³ã¯ãã¯ãªãã¯ãã¦zipãè½ã¨ãã¦ãé©å½ãªã¨ãã«è§£åãã¾ãã
è§£åãããã£ã¬ã¯ããªã¯ãç°å¢å¤æ°STAX_HOMEã«è¨å®ãã¦ãPATHãéãã¦ããã¾ãã
ããã§SDKã®ã¤ã³ã¹ãã¼ã«ã¯çµãã!
ãããã¢ããªã±ã¼ã·ã§ã³ãä½ã£ã¦ã¿ã
ã¢ããªã±ã¼ã·ã§ã³ã¯ãSDKã®ã³ãã³ãã©ã¤ã³ãã¼ã«ã§ã使ã§ãã¾ããããã£ãããªã®ã§WebããWizardã使ã£ã¦ä½æãã¦ã¿ã¾ãã
StAXã®ç®¡çç»é¢ã«ãããStax Application Wizard ããªã³ã¯ãã¯ãªãã¯ãã¾ãã
ãããªæãã®ç»é¢ãåºã¦ãã¾ãã®ã§ãã¢ããªã±ã¼ã·ã§ã³åãé©å½ã«å
¥ãã¾ãã
ã¢ããªã±ã¼ã·ã§ã³ã®ãã³ãã¬ã¼ãã¨ãã¦ããããããã¾ãããããã¯Wicketã鏿ãã¾ãã
ã§ãCreateããã¿ã³ãæ¼ãã ãã§ãã¢ããªã±ã¼ã·ã§ã³ã使ããã¾ããããªãªã¢ã³ã!!
ä½ã£ãã¢ããªã±ã¼ã·ã§ã³ã¯ããDownloadããªã³ã¯ããè½ã¨ããã¨ãã§ãã¾ãããããã¯SDKã®ãã¼ã«ã§ãã¦ã³ãã¼ããã¦ã¿ã¾ãã
以ä¸ã®ã³ãã³ãã§ããã¼ã«ã«PCã«ä½æãããã¢ããªã±ã¼ã·ã§ã³ã®ã½ã¼ã¹ãã¡ã¤ã«ä¸å¼ãåå¾ãããã¨ãã§ãã¾ãã
stax getapp -a [ã¦ã¼ã¶ã¼å]/[ã¢ããªã±ã¼ã·ã§ã³å] -u [ã¦ã¼ã¶ã¼å] -p [ãã¹ã¯ã¼ã]
ã³ãã³ãããã¤ã¨ããã°ããããªæãã§ã
Downloading Stax SDK configuration from http://stax-downloads.s3.amazonaws.com/sdk/stax-sdk-config.xml . download completed Preparing to download application... Downloading..............................
ã§ãã¾ãã!!
ã¢ããªã®ã½ã¼ã¹ãããã£ã¦ã¿ãã
åå¾ãããã¡ã¤ã«ã«ã¯ã.classpathã¨.projectãããã®ã§ããã®ã¾ã¾Eclpseã«ã¤ã³ãã¼ãã§ãã¾ãã
ã³ã³ãã¤ã«ã¨ã©ã¼ãåºã¦ã¾ããããªã¤!!
.classpathã«è¨å®ããã¦ãwicketã®ãã¼ã¸ã§ã³ã¨WEB-INF/libã«å
¥ã£ã¦ããã¼ã¸ã§ã³ãéãããã§ããã
ããã¸ã§ã¯ããå³ã¯ãªãã¯ãã¦[ãã«ããã¹]â[ãã«ããã¹ã®æ§æ]ã§"ã©ã¤ãã©ãª"ããWicket-1.3ãé¤å»ãã¦ãWicket-1.4-rc1.jarã追å ããã°ç´ãã¾ãã
ã¨ãããããHomePage.javaã§"Hello World"ã¡ãã»ã¼ã¸ã表示ãã¦ããã¨ããæ¥æ¬èªã«ãã¦ã¿ã¾ããã
ãã¼ã«ã«ã§åããã¦ã¿ã
StAXã®SDKã³ãã³ãã§ããã¦ã³ãã¼ãããããã¸ã§ã¯ããã£ã¬ã¯ããªã«ç§»åãã¦
stax run
ããã§http://localhost:8080ã§ã¢ããªã±ã¼ã·ã§ã³ãèµ·åãã¾ãã
ããããããã¤!
ããããä½ã£ã(ã¨ããããæ¹é ãã)ã¢ããªã±ã¼ã·ã§ã³ããµã¼ãã«ãããã¤ãã¦ã¿ã¾ãã
ãããã¤ã¯ãSDKã®ã³ãã³ãããè¡ããã¨ãã§ãã¾ããã¼ã
stax deploy -u [ã¦ã¼ã¶ã¼å] -p [ãã¹ã¯ã¼ã]
ãã°ãæµãã¦ãã¢ããªã±ã¼ã·ã§ã³ã®ãããã¤ãçµããã¾ãã
dist: [war] Building war: /Users/ozaki/dev/Project/sandbox/stax-test/testapp-wicket/dist/webapp.war [jar] Building jar: /Users/ozaki/dev/Project/sandbox/stax-test/testapp-wicket/dist/stax-deploy.zip [zip] Building zip: /Users/ozaki/dev/Project/sandbox/stax-test/testapp-wicket/dist/stax-src.zip uploading application to: www.stax.net application package size: 2MB 2008/12/22 12:37:53 com.staxnet.ant.Deployer deploy æ å ±: Deploying application: testapp-wicket (environment: deploy,prod) ........................uploaded 25% ........................uploaded 50% ........................uploaded 75% ........................upload completed deploying application to server(s)... 2008/12/22 12:38:21 org.apache.commons.httpclient.HttpMethodBase getResponseBody è¦å: Going to buffer response body of large or unknown size. Using getResponseBodyAsStream instead is recommended. 2008/12/22 12:38:21 com.staxnet.ant.RemoteDeployer invokeDeploy æ å ±: Deploy complete, response=<?xml version="1.0" encoding="UTF-8"?> <updateApplicationResult> <id>yuroyoro/testapp-wicket</id> <url>http://testapp-wicket.yuroyoro.staxapps.net</url> </updateApplicationResult>
ãã°ã®æå¾ã«ãã¢ããªã±ã¼ã·ã§ã³ãé
åããã¦ããURLãåºåããã¦ãã¾ãã
ããã«ã¢ã¯ã»ã¹ãã¦ããããã¤ããã¢ããªã±ã¼ã·ã§ã³ã確èªãã¾ãããã
ãããããã!!ã¡ããã¨åãã¦ã¾ãã!!
ãã®ä»
ãããã¯ã¼ã¯å¸¯åãã¡ã¢ãªãCPU使ç¨çã確èªã§ããããç¬èªãã¡ã¤ã³ãå©ç¨ã§ããããå
¬éããç¯å²ãè¨å®ã§ããããã¯ã©ã¹ã¿ãããã ãã¨
ããããã§ãããã§ãã
ã¾ã 調ã¹ã¦ã¾ããããDatabaseãMySQLã使ç¨ã§ããã¿ããã§ãã
Webãµã¼ãã¹ã®ã¤ã³ãã©ã¨ãã¦ãå åãªã¹ããã¯ãåãã¦ããã¨æãã¾ãã
ä»ã®ã¨ããã¯ç¡åãªã®ã§ããããããã«ä½¿ãåãã®ãããããããã¾ããã