在Google App Engine中使用Struts2框架
2009-09-06 00:00:00 来源:WEB开发网package your.servlet.pkg;
import com.google.appengine.api.datastore.Key;
import com.google.appengine.api.datastore.KeyFactory;
import ognl.DefaultTypeConverter;
import java.util.Map;
public class KeyConverter extends DefaultTypeConverter {
@Override
public Object convertValue(Map map, Object o, Class toType) {
if (toType == Key.class) {
String s = ((String[]) o)[0];
return KeyFactory.stringToKey(s);
} else if (toType == String.class) {
Key k = (Key) o;
return KeyFactory.keyToString(k);
}
return null;
}
}
在源代码的根目录,创建xwork-conversion.properties文件,内容如下:
com.google.appengine.api.datastore.Text=your.servlet.pkg.TextConverter
com.google.appengine.api.datastore.Key=your.servlet.pkg.KeyConverter
上面的工作都完成以后,就可以在你的Action里面直接使用Key类型的类变量,无需手工去做String和Key之间的转换!
Convention Plugin不能使用
Struts2里面,最常用的Plugin应该是Convertion了,"零配置"即减少了写配置文件的麻烦,代码的组织结构看起来也清晰很多。
但是在GAE里面,无法读取文件系统,目前的Convertion版本还无法正常工作,非常可惜。不过建议你的GAE应用中,Action和JSP文件,还是按照Convertion Plugin的组织方式来存放,一方面有利于后面的升级和迁移工作,另一方面也让你的应用的文件看起来更清晰。
- ››Google搜索引擎的奥秘
- ››Google测试搜索结果页面右侧内容更丰富的信息栏
- ››Google Dart精粹:应用构建,快照和隔离体
- ››APP Loading页设计和App从当前页进入新页面交互
- ››App产品开发:App产品开发与推广的经验
- ››google的代码审查
- ››google analytics清晰追踪爬虫的爬行信息
- ››Google+中文用户在两千万Google+大军中是少数派
- ››Google AdWords最昂贵点击成本的20种关键词分类
- ››Google运作经理Bryan Power给出的GOOGLE求职意见
- ››Google用户体验的十大设计原则
- ››Applying Styles and Themes - 应用Style和Theme ...
更多精彩
赞助商链接