-SimpleGrizzly
Grizzlyでつくる出来る限りシンプルなHTTPサーバ。
package org.ashikunep.iyomante; import java.io.IOException; import com.sun.enterprise.web.connector.grizzly.SelectorThread; import com.sun.enterprise.web.connector.grizzly.standalone.StaticResourcesAdapter; public class SimpleGrizzly { public static void main(String[] args) throws IOException, InstantiationException { SelectorThread selectorThread = new SelectorThread(); selectorThread.setPort(8080); StaticResourcesAdapter adapter = new StaticResourcesAdapter(); String root = args.length > 0 ? args[0] : "/"; adapter.setRootFolder(root); selectorThread.setAdapter(adapter); selectorThread.initEndpoint(); selectorThread.startEndpoint(); } }
ここで、AdapterというのはTomcatのCoyoteフレームワークのインターフェイスが実装されたものなんですが。。。うーん。コレも作り直して欲しいねえ。たとえばこの例ではシンプルなんでやってませんが、この方向性でもうちょっと手を加えるとなるとAdapterのservice(Request, Response)メソッドを実装することになるかと思います。そうとなると、このRequestですでに結構なことをやっているのが見つけられます。ServletAPIのほうで現れるAttributeをMap
いか〜ん、Tapestry5を見るはずの隙間時間はすべてGrizzlyにとられている。。。