﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-千里冰封</title><link>http://www.blogjava.net/hadeslee/</link><description>JAVA 浓香四溢</description><language>zh-cn</language><lastBuildDate>Sat, 04 Jul 2009 18:33:19 GMT</lastBuildDate><pubDate>Sat, 04 Jul 2009 18:33:19 GMT</pubDate><ttl>60</ttl><item><title>JAVAME的RMS通用持久化框架</title><link>http://www.blogjava.net/hadeslee/archive/2009/03/01/257134.html</link><dc:creator>千里冰封</dc:creator><author>千里冰封</author><pubDate>Sun, 01 Mar 2009 02:13:00 GMT</pubDate><guid>http://www.blogjava.net/hadeslee/archive/2009/03/01/257134.html</guid><wfw:comment>http://www.blogjava.net/hadeslee/comments/257134.html</wfw:comment><comments>http://www.blogjava.net/hadeslee/archive/2009/03/01/257134.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/hadeslee/comments/commentRss/257134.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hadeslee/services/trackbacks/257134.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在写JAVAME程序的时候，我们经常需要保存一些数据到手机里面，也经常希望能把对象也保存到手机里面，但是JAVAME里面没有反射机制，也没有java.io.Serializable接口，所以没有序列化的机制，要保存对象的话，就得自己动手了。<br>在 JAVAME中，程序的数据保存的地方，无外乎两种，一种是把数据保存在RMS里面，这是所有的JAVAME的手机都支持的，还有一种就是把数据保存在手机的文件系统里面，这个不是所有手机都能支持的，只有支持JSR075的手机，才支持把数据保存在文件系统里面，并且如果你的程序没有经过签名的话，你每次保存或者读取，手机都会弹出恼人的提示，是否允许程序访问文件系统。所在我一般都是把数据存在RMS里面，因为读写RMS是安全的，并且也是不需要手机提示的。因为我们的RMS数据是存在一个特殊的地方。但是JAVAME的RMS功能非常底层，为了保存一些数据，我们必须和byte[]打交道，所以我就产生了，在此之前封装一层自己的程序的想法，这样封装好以后，使用起来就非常方便了。只要实现了相关接口，就可以享受到比较易用的方法了。<br><br>此框架总共包括了四个&nbsp;&nbsp;<a href='http://www.blogjava.net/hadeslee/archive/2009/03/01/257134.html'>阅读全文</a><img src ="http://www.blogjava.net/hadeslee/aggbug/257134.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hadeslee/" target="_blank">千里冰封</a> 2009-03-01 10:13 <a href="http://www.blogjava.net/hadeslee/archive/2009/03/01/257134.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JSF页面出错的时候，DataTable不能恢复原有值的解决办法</title><link>http://www.blogjava.net/hadeslee/archive/2009/02/28/257129.html</link><dc:creator>千里冰封</dc:creator><author>千里冰封</author><pubDate>Sat, 28 Feb 2009 03:17:00 GMT</pubDate><guid>http://www.blogjava.net/hadeslee/archive/2009/02/28/257129.html</guid><wfw:comment>http://www.blogjava.net/hadeslee/comments/257129.html</wfw:comment><comments>http://www.blogjava.net/hadeslee/archive/2009/02/28/257129.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/hadeslee/comments/commentRss/257129.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hadeslee/services/trackbacks/257129.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在使用JSF的时候，它的事件驱动模式是一个很好的开发方法，但是由于JSF毕竟现在的版本才1.2,所以对于有些细节上面处理就不一定如人意了,一般来说，当JSF的页面验证有错或者有其它的错误的时候，我们以前输入的值会在渲染页面的时候，恢复回来，也就是说，一个域我们绑定在后台的属性是一个int 值，但是我们前台输入了“abcd”，这个时候，后台在验证阶段就过不去了。然后直接渲染页面，JSF 会把我们输入错误的abcd渲染出来。而不是把我们以前绑定在后台的那个属性的值，取出来，这样也正是我们想要的结果，但是当我们的页面包括了 dataTable的时候，并且DataTable里面的值是可以编辑的时候，当页面上有错误的时候，别的域都会显示刚才我们输入的值，唯有 DataTable里面的输入域的值没有还原为我们刚才输入的值，而是绑定在后台的值，这显然不是我们想要看到的。但是当DataTable有错误的输入的时候，DataTable才会把它的值恢复回来。说了这么说，感觉有点语无伦次了，还是拿代码说话吧。&nbsp;&nbsp;<a href='http://www.blogjava.net/hadeslee/archive/2009/02/28/257129.html'>阅读全文</a><img src ="http://www.blogjava.net/hadeslee/aggbug/257129.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hadeslee/" target="_blank">千里冰封</a> 2009-02-28 11:17 <a href="http://www.blogjava.net/hadeslee/archive/2009/02/28/257129.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>春运还需多少通宵排队买票猝死的悲剧</title><link>http://www.blogjava.net/hadeslee/archive/2009/01/12/251014.html</link><dc:creator>千里冰封</dc:creator><author>千里冰封</author><pubDate>Mon, 12 Jan 2009 12:34:00 GMT</pubDate><guid>http://www.blogjava.net/hadeslee/archive/2009/01/12/251014.html</guid><wfw:comment>http://www.blogjava.net/hadeslee/comments/251014.html</wfw:comment><comments>http://www.blogjava.net/hadeslee/archive/2009/01/12/251014.html#Feedback</comments><slash:comments>8</slash:comments><wfw:commentRss>http://www.blogjava.net/hadeslee/comments/commentRss/251014.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hadeslee/services/trackbacks/251014.html</trackback:ping><description><![CDATA[<p style="text-indent: 2em;">平凡岁月，生老病死原本算不得什么，一个老人，死于火车站的通宵等待中，就是这样。不能活着回去，那就裹尸而还，死也算是另一种回家。
</p>
<p style="text-indent: 2em;">
</p>
<p style="text-indent: 2em;">这位老伯，不知姓名，&#8220;看起来60岁左右，身上穿的衣服灰扑扑的&#8221;。1月7日凌晨，杭州城站
火车站售票大厅排起了长队，一直排到了大厅门口，这位老伯就排在大厅门外，死时&#8220;他躺在地上，身子下铺着一层报纸&#8221;，刚开始，同来的老乡以为他排队睡着
了，后来&#8220;又是叫又是拉&#8221;，老伯已经没了反应。回家的路太长，他还没有排到可以伸手买到一张票的距离；回家的路不长，一层报纸的厚度，隔着睡着与猝死的距
离。
</p>
<p style="text-indent: 2em;">
</p>
<p style="text-indent: 2em;">死于道路，埋于沟壑，再怎么也只是一叶飘零，而千万片叶子，仍然要挤在回家的车厢与路途，并
期待明年的新绿。这就是中国的春运，最温暖的期待与最卑微的愿望，最大的活力与最凝滞的空气，最多的忍耐与最长的路途，最迫切的解放与最拥挤的压抑。回望
去年罕见的冰灾，广州火车站广场最多时滞留了近80万旅客，饥寒交迫两天即冻晕百多名旅客，1月7日的杭州城站火车站该是小巫见大巫，但悲剧总是让不该发
生的事恰如其分地发生。
</p>
<p style="text-indent: 2em;">
</p>
<p style="text-indent: 2em;">一个偶然的事件，只因一条必定的长途。2005年的元旦，一位在福建省龙岩市做工的湖南籍男
子左家兵，喝了5两白酒一觉睡去，送至医院已回天乏术，老乡李绍为只得带上醉死他乡的左家兵，乘K298列车踏上扛尸之途，最后在广州流花火车站被发觉。
后来，这段传奇被那位常在春晚表演&#8220;农民式狡猾&#8221;的赵本山，拍成电影《落叶归根》。无名老伯之死，与左家兵同一路途，只少去了应用&#8220;农民式狡猾&#8221;的坎坷，
一睡便成坦途，默生默死之间，同是天涯沦落人。
</p>
<p style="text-indent: 2em;">
</p>
<p style="text-indent: 2em;">无意指责春运什么，不就是中国特有的社会现象么，谁要这个急剧转型的社会，必须用这样长的路途承载劳动力的转移与生活希望的潮起潮落呢？然而，恰恰是在一个13亿人最喜悦的团聚时刻，要用那么多悲剧去分担。
</p>
<p style="text-indent: 2em;">
</p>
<p style="text-indent: 2em;">我们也还记得，去年1月13日，春运第一天，人员爆满的5082次列车驶入安徽芜湖火车站，
因担心上不了车，一号站台人群向还未停稳的列车涌过去，安徽师范大学大三女生冷静被挤下站台，在正滑行着的车轮之下，一朵生命之花凋谢在长长的铁轨上，而
属于她的铁轨，是一支香烟的长度——据统计，中国的人均铁路长度是57毫米，而每年春运，有20多亿人次的人口流动，事后，媒体报道，事发当天铁路部门给
芜湖站出售5082次车票额定量为40张，实际售票量为484张。
</p>
<p style="text-indent: 2em;">
</p>
<p style="text-indent: 2em;">十数年的春运，运送了太多的愿望，也有太多的欠账，所有的激烈与无奈，所有的挣扎与改变，都被悲剧放大并表现出来。这个社会最广泛的人群，被放在狭小的空间内，为了各自的幸福与各自的团聚而奋斗，那么在车厢之外，又有谁在为他们的幸福与平等而奋斗？
</p>
<p style="text-indent: 2em;">
</p>
<p style="text-indent: 2em;">铁道部早就在说，要彻底解决春运买票难的问题，有待于发达的铁路网的建设，3至5年后中国铁
路客运专线网可以初步建成，能基本解决中国铁路一票难求的局面。十数年的等待，已经造成了这许多悲剧，3至5年的等待又要多少悲剧来支撑呢？人们所希望的
是，这个等待，能够快一点，这种等待，悲剧可以少一点。一年的活着，就是等待一张回家的车票，对于许多人来说，这张车票太重太重。这张薄薄的车票，不应写
满沉重、落满悲伤，即使是在目前铁路资源紧张的状况下，责任、荣誉与关爱以及能力的充分发掘,也能让这张车票承载更多的权利，这不是梦想，而是呼吁。 </p>
<img src ="http://www.blogjava.net/hadeslee/aggbug/251014.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hadeslee/" target="_blank">千里冰封</a> 2009-01-12 20:34 <a href="http://www.blogjava.net/hadeslee/archive/2009/01/12/251014.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>struts2的struts.properties配置文件详解</title><link>http://www.blogjava.net/hadeslee/archive/2008/12/03/244199.html</link><dc:creator>千里冰封</dc:creator><author>千里冰封</author><pubDate>Wed, 03 Dec 2008 13:00:00 GMT</pubDate><guid>http://www.blogjava.net/hadeslee/archive/2008/12/03/244199.html</guid><wfw:comment>http://www.blogjava.net/hadeslee/comments/244199.html</wfw:comment><comments>http://www.blogjava.net/hadeslee/archive/2008/12/03/244199.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/hadeslee/comments/commentRss/244199.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hadeslee/services/trackbacks/244199.html</trackback:ping><description><![CDATA[<div>
<div>
<p>struts.action.extension<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;URL&nbsp;extension&nbsp;to&nbsp;use&nbsp;to&nbsp;determine&nbsp;if&nbsp;the&nbsp;request&nbsp;is&nbsp;meant&nbsp;for&nbsp;a&nbsp;Struts&nbsp;action&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;用URL扩展名来确定是否这个请求是被用作Struts&nbsp;action，其实也就是设置&nbsp;action的后缀，例如login.do的'do'字。<br />
<br />
struts.configuration<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;org.apache.struts2.config.Configuration&nbsp;implementation&nbsp;class<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;org.apache.struts2.config.Configuration接口名<br />
<br />
struts.configuration.files<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;A&nbsp;list&nbsp;of&nbsp;configuration&nbsp;files&nbsp;automatically&nbsp;loaded&nbsp;by&nbsp;Struts&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;struts自动加载的一个配置文件列表<br />
<br />
struts.configuration.xml.reload<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether&nbsp;to&nbsp;reload&nbsp;the&nbsp;XML&nbsp;configuration&nbsp;or&nbsp;not<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是否加载xml配置(true,false)<br />
<br />
struts.continuations.package<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;package&nbsp;containing&nbsp;actions&nbsp;that&nbsp;use&nbsp;Rife&nbsp;continuations<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;含有actions的完整连续的package名称<br />
<br />
struts.custom.i18n.resources<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Location&nbsp;of&nbsp;additional&nbsp;localization&nbsp;properties&nbsp;files&nbsp;to&nbsp;load&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;加载附加的国际化属性文件（不包含.properties后缀）<br />
<br />
struts.custom.properties<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Location&nbsp;of&nbsp;additional&nbsp;configuration&nbsp;properties&nbsp;files&nbsp;to&nbsp;load<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;加载附加的配置文件的位置<br />
<br />
<br />
struts.devMode<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether&nbsp;Struts&nbsp;is&nbsp;in&nbsp;development&nbsp;mode&nbsp;or&nbsp;not<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是否为struts开发模式<br />
<br />
struts.dispatcher.parametersWorkaround<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether&nbsp;to&nbsp;use&nbsp;a&nbsp;Servlet&nbsp;request&nbsp;parameter&nbsp;workaround&nbsp;necessary&nbsp;for&nbsp;some&nbsp;versions&nbsp;of&nbsp;WebLogic<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;（某些版本的weblogic专用）是否使用一个servlet请求参数工作区（PARAMETERSWORKAROUND）<br />
<br />
struts.enable.DynamicMethodInvocation<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Allows&nbsp;one&nbsp;to&nbsp;disable&nbsp;dynamic&nbsp;method&nbsp;invocation&nbsp;from&nbsp;the&nbsp;URL<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;允许动态方法调用<br />
<br />
struts.freemarker.manager.classname<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;org.apache.struts2.views.freemarker.FreemarkerManager&nbsp;implementation&nbsp;class&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;org.apache.struts2.views.freemarker.FreemarkerManager接口名<br />
<br />
struts.i18n.encoding<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;encoding&nbsp;to&nbsp;use&nbsp;for&nbsp;localization&nbsp;messages<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;国际化信息内码<br />
<br />
struts.i18n.reload<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether&nbsp;the&nbsp;localization&nbsp;messages&nbsp;should&nbsp;automatically&nbsp;be&nbsp;reloaded<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是否国际化信息自动加载&nbsp;<br />
<br />
struts.locale<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;default&nbsp;locale&nbsp;for&nbsp;the&nbsp;Struts&nbsp;application<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;默认的国际化地区信息<br />
<br />
struts.mapper.class<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;org.apache.struts2.dispatcher.mapper.ActionMapper&nbsp;implementation&nbsp;class<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;org.apache.struts2.dispatcher.mapper.ActionMapper接口<br />
<br />
struts.multipart.maxSize<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;maximize&nbsp;size&nbsp;of&nbsp;a&nbsp;multipart&nbsp;request&nbsp;(file&nbsp;upload)<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;multipart请求信息的最大尺寸（文件上传用）&nbsp;<br />
<br />
struts.multipart.parser<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;org.apache.struts2.dispatcher.multipart.MultiPartRequest&nbsp;parser&nbsp;implementation&nbsp;for&nbsp;a&nbsp;multipart&nbsp;request&nbsp;(file&nbsp;upload)&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;专为multipart请求信息使用的org.apache.struts2.dispatcher.multipart.MultiPartRequest解析器接口（文件上传用）<br />
<br />
<br />
struts.multipart.saveDir<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;directory&nbsp;to&nbsp;use&nbsp;for&nbsp;storing&nbsp;uploaded&nbsp;files&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;设置存储上传文件的目录夹<br />
<br />
struts.objectFactory<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;com.opensymphony.xwork2.ObjectFactory&nbsp;implementation&nbsp;class<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;com.opensymphony.xwork2.ObjectFactory接口（spring）<br />
<br />
struts.objectFactory.spring.autoWire<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether&nbsp;Spring&nbsp;should&nbsp;autoWire&nbsp;or&nbsp;not<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是否自动绑定Spring<br />
<br />
struts.objectFactory.spring.useClassCache<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether&nbsp;Spring&nbsp;should&nbsp;use&nbsp;its&nbsp;class&nbsp;cache&nbsp;or&nbsp;not<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是否spring应该使用自身的cache&nbsp;<br />
<br />
struts.objectTypeDeterminer<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;com.opensymphony.xwork2.util.ObjectTypeDeterminer&nbsp;implementation&nbsp;class<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;com.opensymphony.xwork2.util.ObjectTypeDeterminer接口<br />
<br />
struts.serve.static.browserCache<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If&nbsp;static&nbsp;content&nbsp;served&nbsp;by&nbsp;the&nbsp;Struts&nbsp;filter&nbsp;should&nbsp;set&nbsp;browser&nbsp;caching&nbsp;header&nbsp;properties&nbsp;or&nbsp;not&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是否struts过滤器中提供的静态内容应该被浏览器缓存在头部属性中<br />
<br />
struts.serve.static<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether&nbsp;the&nbsp;Struts&nbsp;filter&nbsp;should&nbsp;serve&nbsp;static&nbsp;content&nbsp;or&nbsp;not&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是否struts过滤器应该提供静态内容<br />
<br />
struts.tag.altSyntax<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether&nbsp;to&nbsp;use&nbsp;the&nbsp;alterative&nbsp;syntax&nbsp;for&nbsp;the&nbsp;tags&nbsp;or&nbsp;not&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是否可以用替代的语法替代tags<br />
<br />
struts.ui.templateDir<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;directory&nbsp;containing&nbsp;UI&nbsp;templates<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;UI&nbsp;templates的目录夹&nbsp;<br />
<br />
struts.ui.theme<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;default&nbsp;UI&nbsp;template&nbsp;theme<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;默认的UI&nbsp;template主题<br />
<br />
struts.url.http.port<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;HTTP&nbsp;port&nbsp;used&nbsp;by&nbsp;Struts&nbsp;URLs<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;设置http端口<br />
<br />
struts.url.https.port<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;HTTPS&nbsp;port&nbsp;used&nbsp;by&nbsp;Struts&nbsp;URLs&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;设置https端口<br />
<br />
struts.url.includeParams<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;default&nbsp;includeParams&nbsp;method&nbsp;to&nbsp;generate&nbsp;Struts&nbsp;URLs&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;在url中产生&nbsp;默认的includeParams<br />
<br />
<br />
struts.velocity.configfile<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;Velocity&nbsp;configuration&nbsp;file&nbsp;path<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;velocity配置文件路径<br />
<br />
struts.velocity.contexts<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List&nbsp;of&nbsp;Velocity&nbsp;context&nbsp;names<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;velocity的context列表<br />
<br />
<br />
struts.velocity.manager.classname<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;org.apache.struts2.views.velocity.VelocityManager&nbsp;implementation&nbsp;class<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;org.apache.struts2.views.velocity.VelocityManager接口名<br />
<br />
struts.velocity.toolboxlocation<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The&nbsp;location&nbsp;of&nbsp;the&nbsp;Velocity&nbsp;toolbox<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;velocity工具盒的位置&nbsp;<br />
struts.xslt.nocache<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Whether&nbsp;or&nbsp;not&nbsp;XSLT&nbsp;templates&nbsp;should&nbsp;not&nbsp;be&nbsp;cached<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;是否XSLT模版应该被缓存</p>
<p>struts.serve.static.browserCache 该属性设置浏览器是否缓存静态内容。当应用处于开发阶段时，我们希望每次请求都获得服务器的最新响应，则可设置该属性为false。</p>
<p>struts.enable.DynamicMethodInvocation 该属性设置Struts 2是否支持动态方法调用，该属性的默认值是true。如果需要关闭动态方法调用，则可设置该属性为false。</p>
<p>struts.enable.SlashesInActionNames 该属性设置Struts 2是否允许在Action名中使用斜线，该属性的默认值是false。如果开发者希望允许在Action名中使用斜线，则可设置该属性为true。</p>
<p>struts.tag.altSyntax 该属性指定是否允许在Struts 2标签中使用表达式语法，因为通常都需要在标签中使用表达式语法，故此属性应该设置为true，该属性的默认值是true。</p>
<p>struts.devMode该属性设置Struts
2应用是否使用开发模式。如果设置该属性为true，则可以在应用出错时显示更多、更友好的出错提示。该属性只接受true和flase两个值，该属性的
默认值是false。通常，应用在开发阶段，将该属性设置为true，当进入产品发布阶段后，则该属性设置为false。</p>
<p>struts.i18n.reload该属性设置是否每次HTTP请求到达时，系统都重新加载资源文件。该属性默认值是false。在开发阶段将该属性设置为true会更有利于开发，但在产品发布阶段应将该属性设置为false。</p>
<p>提示 开发阶段将该属性设置了true，将可以在每次请求时都重新加载国际化资源文件，从而可以让开发者看到实时开发效果；产品发布阶段应该将该属性设置为false，是为了提供响应性能，每次请求都需要重新加载资源文件会大大降低应用的性能。</p>
<p>struts.ui.theme该属性指定视图标签默认的视图主题，该属性的默认值是xhtml。</p>
<p>struts.ui.templateDir该属性指定视图主题所需要模板文件的位置，该属性的默认值是template，即默认加载template路径下的模板文件。</p>
<p>struts.ui.templateSuffix该属性指定模板文件的后缀，该属性的默认属性值是ftl。该属性还允许使用ftl、vm或jsp，分别对应FreeMarker、Velocity和JSP模板。</p>
<p>struts.configuration.xml.reload该属性设置当struts.xml文件改变后，系统是否自动重新加载该文件。该属性的默认值是false。</p>
<p>struts.velocity.configfile该属性指定Velocity框架所需的velocity.properties文件的位置。该属性的默认值为velocity.properties。</p>
<p>struts.velocity.contexts该属性指定Velocity框架的Context位置，如果该框架有多个Context，则多个Context之间以英文逗号（,）隔开。</p>
<p>struts.velocity.toolboxlocation该属性指定Velocity框架的toolbox的位置。</p>
<p>struts.url.http.port该属性指定Web应用所在的监听端口。该属性通常没有太大的用户，只是当Struts 2需要生成URL时（例如Url标签），该属性才提供Web应用的默认端口。</p>
<p>struts.url.https.port该属性类似于struts.url.http.port属性的作用，区别是该属性指定的是Web应用的加密服务端口。</p>
<p>struts.url.includeParams该属性指定Struts 2生成URL时是否包含请求参数。该属性接受none、get和all三个属性值，分别对应于不包含、仅包含GET类型请求参数和包含全部请求参数。</p>
<p><br />
struts.custom.i18n.resources该属性指定Struts 2应用所需要的国际化资源文件，如果有多份国际化资源文件，则多个资源文件的文件名以英文逗号（,）隔开。</p>
<p><br />
struts.dispatcher.parametersWorkaround 对于某些Java
EE服务器，不支持HttpServlet
Request调用getParameterMap()方法，此时可以设置该属性值为true来解决该问题。该属性的默认值是false。对于
WebLogic、Orion和OC4J服务器，通常应该设置该属性为true。</p>
<p>struts.freemarker.manager.classname 该属性指定Struts
2使用的FreeMarker管理器。该属性的默认值是
org.apache.struts2.views.freemarker.FreemarkerManager，这是Struts
2内建的FreeMarker管理器。</p>
<p>struts.freemarker.wrapper.altMap该属性只支持true和false两个属性值，默认值是true。通常无需修改该属性值。</p>
<p>struts.xslt.nocache 该属性指定XSLT Result是否使用样式表缓存。当应用处于开发阶段时，该属性通常被设置为true；当应用处于产品使用阶段时，该属性通常被设置为false。</p>
<p>struts.configuration.files 该属性指定Struts
2框架默认加载的配置文件，如果需要指定默认加载多个配置文件，则多个配置文件的文件名之间以英文逗号（,）隔开。该属性的默认值为struts-
default.xml,struts-plugin.xml,struts.xml，看到该属性值，读者应该明白为什么Struts
2框架默认加载struts.xml文件了。</p>
</div>
</div>
<img src ="http://www.blogjava.net/hadeslee/aggbug/244199.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hadeslee/" target="_blank">千里冰封</a> 2008-12-03 21:00 <a href="http://www.blogjava.net/hadeslee/archive/2008/12/03/244199.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JPA和hibernate对删除操作的不同</title><link>http://www.blogjava.net/hadeslee/archive/2008/10/21/235327.html</link><dc:creator>千里冰封</dc:creator><author>千里冰封</author><pubDate>Tue, 21 Oct 2008 00:23:00 GMT</pubDate><guid>http://www.blogjava.net/hadeslee/archive/2008/10/21/235327.html</guid><wfw:comment>http://www.blogjava.net/hadeslee/comments/235327.html</wfw:comment><comments>http://www.blogjava.net/hadeslee/archive/2008/10/21/235327.html#Feedback</comments><slash:comments>5</slash:comments><wfw:commentRss>http://www.blogjava.net/hadeslee/comments/commentRss/235327.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hadeslee/services/trackbacks/235327.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在hibernate里面调用session的delete方法以后，无论这个被删除的对象有没有被人外键引用到，都可以被删除，并且此时的外键设为 null，也就是说他会自动帮我们去查看他被谁引用到了。然后把引用全部去掉后，再把自己删掉。而在JPA里面，如果调用 EntityManager.remove方法时，传进去的对象，有被外键引用到，则会失败。因为JPA里面的实现就是直接执行delete语句，也不管他有没有被外键引用，此时，当然会出错了。&nbsp;&nbsp;<a href='http://www.blogjava.net/hadeslee/archive/2008/10/21/235327.html'>阅读全文</a><img src ="http://www.blogjava.net/hadeslee/aggbug/235327.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hadeslee/" target="_blank">千里冰封</a> 2008-10-21 08:23 <a href="http://www.blogjava.net/hadeslee/archive/2008/10/21/235327.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用JPA的不同实现的配置</title><link>http://www.blogjava.net/hadeslee/archive/2008/10/19/235322.html</link><dc:creator>千里冰封</dc:creator><author>千里冰封</author><pubDate>Sun, 19 Oct 2008 10:38:00 GMT</pubDate><guid>http://www.blogjava.net/hadeslee/archive/2008/10/19/235322.html</guid><wfw:comment>http://www.blogjava.net/hadeslee/comments/235322.html</wfw:comment><comments>http://www.blogjava.net/hadeslee/archive/2008/10/19/235322.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/hadeslee/comments/commentRss/235322.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hadeslee/services/trackbacks/235322.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 以前使用JPA的实现是toplink，现在改为hibernate，所以要修改persistence.xml文件，两者的配置有一些不一样，并且在 EE环境下面和SE的环境下面也有不一样，还有一点，那就是当persistence.xml里面有些格式出错的时候，虽然出错的不是我们需要的那个单元，但也会使得整个persistence.xml报废。&nbsp;&nbsp;<a href='http://www.blogjava.net/hadeslee/archive/2008/10/19/235322.html'>阅读全文</a><img src ="http://www.blogjava.net/hadeslee/aggbug/235322.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hadeslee/" target="_blank">千里冰封</a> 2008-10-19 18:38 <a href="http://www.blogjava.net/hadeslee/archive/2008/10/19/235322.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>为glassfish配置多个domain</title><link>http://www.blogjava.net/hadeslee/archive/2008/10/14/234322.html</link><dc:creator>千里冰封</dc:creator><author>千里冰封</author><pubDate>Tue, 14 Oct 2008 14:59:00 GMT</pubDate><guid>http://www.blogjava.net/hadeslee/archive/2008/10/14/234322.html</guid><wfw:comment>http://www.blogjava.net/hadeslee/comments/234322.html</wfw:comment><comments>http://www.blogjava.net/hadeslee/archive/2008/10/14/234322.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/hadeslee/comments/commentRss/234322.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hadeslee/services/trackbacks/234322.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要:     在开发的过程中，我们可能需要将生产环境和调试环境分开来，这样才能保证安全性，但是安装两个glassfish又不太可能，因为它太庞大了。另外做为一个工程发布也不太方便，每次都要将工程名改来改去，并且绑定的EJB在同一个域内里是不能同名的。这样的话，要改变的东西实在是太多了。<br>    我们可有以第三种方法，那就是为glassfish添加另外的domain，一个domain跑我们的真实环境，一个domain跑我们的测试环境，因为是同一个glassfish，所以也不会存在从测试到真实环境的移植问题。以后只要改一个domain就可以了。我们在安装glassfish的时候，它已经默认为我们安装了一个domain，那就是domain1.&nbsp;&nbsp;<a href='http://www.blogjava.net/hadeslee/archive/2008/10/14/234322.html'>阅读全文</a><img src ="http://www.blogjava.net/hadeslee/aggbug/234322.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hadeslee/" target="_blank">千里冰封</a> 2008-10-14 22:59 <a href="http://www.blogjava.net/hadeslee/archive/2008/10/14/234322.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>J2ME Property属性表</title><link>http://www.blogjava.net/hadeslee/archive/2008/09/18/229798.html</link><dc:creator>千里冰封</dc:creator><author>千里冰封</author><pubDate>Thu, 18 Sep 2008 13:07:00 GMT</pubDate><guid>http://www.blogjava.net/hadeslee/archive/2008/09/18/229798.html</guid><wfw:comment>http://www.blogjava.net/hadeslee/comments/229798.html</wfw:comment><comments>http://www.blogjava.net/hadeslee/archive/2008/09/18/229798.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/hadeslee/comments/commentRss/229798.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hadeslee/services/trackbacks/229798.html</trackback:ping><description><![CDATA[在J2ME开发中，我们经常需要和手机系统进行交互，获得一些和系统相关的信息，在J2ME API设计中，提供了一系列的系统属性，可以让我们来进行获得，下面就一一进行介绍。
<div align="center">表1 <span>&nbsp;&nbsp;CLDC</span>、MIDP和JTWI属性</div>
<div align="center">
<table style="border: medium none ; margin-left: 62.1pt; border-collapse: collapse;" border="1" cellpadding="0" cellspacing="0">
    <tbody>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div align="center">属性名称</div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div align="center">属性作用</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div>microedition.profiles</div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的MIDP版本，返回格式值为&#8220;MIDP-1.0&#8221;或&#8220;MIDP-2.0&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>microedition.configuration</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的CLDC版本，返回格式值为&#8220;CLDC-1.0&#8221;或&#8220;CLDC-2.0&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>microedition.locale</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机所在的国家或地区，返回值格式为&#8220;en-US&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>microedition.platform</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机的品牌和型号，Nokia手机的返回值格式为&#8220;<span>Nokia6310i/4.42</span>&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>microedition.encoding</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机默认的字符集名称，返回值格式为&#8220;ISO-8859-1&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>microedition.commports</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机可以使用的串口列表，返回值中各个串口之间使用逗号分隔</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>microedition.hostname</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>MIDP2.0定义，代表本地主机名称，需要手机支持。</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>microedition.jtwi.version</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的JTWI版本，值必须是&#8220;1.0&#8221;</div>
            </td>
        </tr>
    </tbody>
</table>
</div>
<div>&nbsp;</div>
<div align="center">表2&nbsp;可选包属性</div>
<div align="center">
<table style="border: medium none ; margin-left: 62.1pt; border-collapse: collapse;" border="1" cellpadding="0" cellspacing="0">
    <tbody>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div align="center">属性名称</div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div align="center">属性作用</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div>microedition.media.version</div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的MMAPI版本，如果不支持则返回null</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div>microedition.pim.version</div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的PIM API版本，如果不支持则返回null</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div>microedition.m3g.version</div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的M3G API版本，如果不支持则返回null</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>microedition.location.version</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的Location API版本，如果不支持则返回null</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>Bluetooth.api.version</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的BT API版本，如果不支持则返回null</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>microedition.io.file.</span></div>
            <div><span>FileConnection.version</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的FC API版本，如果不支持则返回null</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>microedition.global.version</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的Mobile Internationalization API(JSR-238)版本，如果不支持则返回null</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>microedition.chapi.version</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的CH(Content Handler) API(JSR211)版本，如果不支持则返回null</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>microedition.sip.version</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的SIP API版本，如果不支持则返回null</div>
            </td>
        </tr>
    </tbody>
</table>
</div>
<div align="left">&nbsp;</div>
<div align="center">表3&nbsp;MMAPI属性</div>
<div align="center">
<table style="border: medium none ; margin-left: 62.1pt; border-collapse: collapse;" border="1" cellpadding="0" cellspacing="0">
    <tbody>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div align="center">属性名称</div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div align="center">属性作用</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>supports.mixing</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机是否支持混音(同时播放多个Player)，返回值为&#8220;true&#8221;或&#8220;false&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>supports.audio.capture</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机是否支持声音捕获(录音)，返回值为&#8220;true&#8221;或&#8220;false&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div>supports.video.capture</div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机是否支持视频捕获(录像)，返回值为&#8220;true&#8221;或&#8220;false&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>supports.recording</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机是否支持记录(record)，返回值为&#8220;true&#8221;或&#8220;false&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>audio.encodings</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的声音格式，返回值格式为&#8220;encoding=audio/wav&#8221;，多个格式之间使用至少一个空格进行间隔</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>video.encodings</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的视频格式，返回值格式为&#8220;encoding=video/3gpp&#8221;，多个格式之间使用至少一个空格进行间隔</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>video.snapshot.encodings</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机使用<span>getSnapshot</span><span>方法获得的视频快照格式，</span>返回值格式为&#8220;encoding=png&#8221;，多个格式之间使用至少一个空格进行间隔</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>streamable.contents</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机支持的流媒体格式，返回null代表不支持</div>
            </td>
        </tr>
    </tbody>
</table>
</div>
<div align="left">&nbsp;</div>
<div align="center">表4 Wireless Messaging API属性</div>
<div align="center">
<table style="border: medium none ; margin-left: 62.1pt; border-collapse: collapse;" border="1" cellpadding="0" cellspacing="0">
    <tbody>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div align="center">属性名称</div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div align="center">属性作用</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 150.95pt;" valign="top" width="201">
            <div><span>wireless.messaging.sms.smsc</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 175.1pt;" valign="top" width="233">
            <div>代表手机发送短信时的短信服务中心号码</div>
            </td>
        </tr>
    </tbody>
</table>
</div>
<div align="left">&nbsp;</div>
<div align="center">表5 FileConnection API</div>
<div align="center">
<table style="border: medium none ; margin-left: 62.1pt; border-collapse: collapse;" border="1" cellpadding="0" cellspacing="0">
    <tbody>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 151.55pt;" valign="top" width="202">
            <div align="center">属性名称</div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 212.45pt;" valign="top" width="283">
            <div align="center">属性作用</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 151.55pt;" valign="top" width="202">
            <div><span>fileconn.dir.photos</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 212.45pt;" valign="top" width="283">
            <div>代表手机中存储照片和其它图片的目录，例如&#8220;file:///c:/My files/ Images /&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 151.55pt;" valign="top" width="202">
            <div><span>fileconn.dir.videos</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 212.45pt;" valign="top" width="283">
            <div>代表手机中存储视频的目录，例如&#8220;file:///c:/My files/Video clips/&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 151.55pt;" valign="top" width="202">
            <div>fileconn.dir.tones</div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 212.45pt;" valign="top" width="283">
            <div>代表手机中存储声音的目录，例如&#8220;file:///c:/My files/Tones/&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 151.55pt;" valign="top" width="202">
            <div><span>fileconn.dir.memorycard</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 212.45pt;" valign="top" width="283">
            <div>代表手机中存储卡的根目录。例如&#8220;file:///d:/&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 151.55pt;" valign="top" width="202">
            <div><span>fileconn.dir.private</span> <br />
            (Nokia S40不支持)&nbsp;</div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 212.45pt;" valign="top" width="283">
            <div>代表手机中MIDlet的私有工作目录，例如&#8220;file:///c:/System/MIDlets/[1015f294]/scratch&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 151.55pt;" valign="top" width="202">
            <div><span>fileconn.dir.photos.name</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 212.45pt;" valign="top" width="283">
            <div>代表手机中图片目录的名称，例如&#8220;Images&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 151.55pt;" valign="top" width="202">
            <div><span>fileconn.dir.videos.name</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 212.45pt;" valign="top" width="283">
            <div>代表手机中视频目录的名称，例如&#8220;Video clips&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 151.55pt;" valign="top" width="202">
            <div><span>fileconn.dir.tones.name</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 212.45pt;" valign="top" width="283">
            <div>代表手机中声音目录的名称，例如&#8220;Sound clips&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 151.55pt;" valign="top" width="202">
            <div><span>file.separator</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 212.45pt;" valign="top" width="283">
            <div>代表手机中的文件分隔符，例如&#8220;/&#8221;</div>
            </td>
        </tr>
        <tr>
            <td style="padding: 0cm 5.4pt; width: 151.55pt;" valign="top" width="202">
            <div><span>fileconn.dir.memorycard.name</span></div>
            </td>
            <td style="padding: 0cm 5.4pt; width: 212.45pt;" valign="top" width="283">
            <div>代表手机中存储卡的名称，例如&#8220;Memory card&#8221;</div>
            </td>
        </tr>
    </tbody>
</table>
</div>
<div align="left">&nbsp;</div>
<div align="left"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>使用这些属性，可以获得在程序运行过程中需要的很多和系统相关的信息，也可以使用表2中的属性来获得手机是否支持对应的可选包等信息。</div>
<div align="left"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>实际使用示例：</div>
<div align="left"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String name = System.getProperty(&#8220;microedition.platform&#8221;);</span></div>
<div align="left">&nbsp;</div>
<div align="left"><span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span>注意：如果需要获得JVM</span><span>或jad</span><span>文件中的信息，需要使用MIDlet</span><span>类中的getAppProperty</span><span>方法，其属性名则需要查阅jad</span><span>文件的设定，和本文所述的属性名无关。</span></div>
<img src ="http://www.blogjava.net/hadeslee/aggbug/229798.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hadeslee/" target="_blank">千里冰封</a> 2008-09-18 21:07 <a href="http://www.blogjava.net/hadeslee/archive/2008/09/18/229798.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>为学</title><link>http://www.blogjava.net/hadeslee/archive/2008/08/13/221785.html</link><dc:creator>千里冰封</dc:creator><author>千里冰封</author><pubDate>Wed, 13 Aug 2008 09:40:00 GMT</pubDate><guid>http://www.blogjava.net/hadeslee/archive/2008/08/13/221785.html</guid><wfw:comment>http://www.blogjava.net/hadeslee/comments/221785.html</wfw:comment><comments>http://www.blogjava.net/hadeslee/archive/2008/08/13/221785.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/hadeslee/comments/commentRss/221785.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hadeslee/services/trackbacks/221785.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 天下事有难易乎？为之，则难者亦易矣；不为，则易者亦难矣。人之为学有难易乎？学之，则难者亦易矣；不学，则易者亦难矣。<br>吾资之昏，不逮人也；吾材之庸，不逮人也；旦旦而学之，久而不怠焉，迄乎成，而亦不知其昏与庸也。吾资之聪，倍人也；吾材之敏，倍人也；屏弃而不用，其与昏与庸无以异也。圣人之道，卒于鲁也传之。然则昏庸聪敏之用，岂有常哉！<br>蜀之鄙，有二僧：其一贫，其一富。贫者语于富者曰："吾欲之南海，何如？"<br>富者曰："子何恃而往？"<br>曰："吾一瓶一钵足矣。"<br>富者曰："吾数年来欲买舟而下，犹未能也，子何恃而往！"<br>越明年，贫者自南海还，以告富者 。富者有惭色。<br>西蜀之去南海，不知几千里也，僧富者不能至而贫者至焉，人之立志，顾不如蜀鄙之僧哉？ 是故聪与敏，可恃而不可恃也；自恃其聪与敏而不学者，自败者也 。昏与庸，可限而不可限也；不自限其昏与庸而力学不倦者，自力者也。&nbsp;&nbsp;<a href='http://www.blogjava.net/hadeslee/archive/2008/08/13/221785.html'>阅读全文</a><img src ="http://www.blogjava.net/hadeslee/aggbug/221785.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hadeslee/" target="_blank">千里冰封</a> 2008-08-13 17:40 <a href="http://www.blogjava.net/hadeslee/archive/2008/08/13/221785.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>glassfish下打包的问题</title><link>http://www.blogjava.net/hadeslee/archive/2008/08/07/220781.html</link><dc:creator>千里冰封</dc:creator><author>千里冰封</author><pubDate>Thu, 07 Aug 2008 14:55:00 GMT</pubDate><guid>http://www.blogjava.net/hadeslee/archive/2008/08/07/220781.html</guid><wfw:comment>http://www.blogjava.net/hadeslee/comments/220781.html</wfw:comment><comments>http://www.blogjava.net/hadeslee/archive/2008/08/07/220781.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/hadeslee/comments/commentRss/220781.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hadeslee/services/trackbacks/220781.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 今天使用glassfish部署一个EJB的应用,这个EJB又引用到了第三方库,并且第三方库又使用了本地方法,需要导入两个DLL动态链接库.反反复复部署了很久,终于还是部署成功了.&nbsp;&nbsp;<a href='http://www.blogjava.net/hadeslee/archive/2008/08/07/220781.html'>阅读全文</a><img src ="http://www.blogjava.net/hadeslee/aggbug/220781.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hadeslee/" target="_blank">千里冰封</a> 2008-08-07 22:55 <a href="http://www.blogjava.net/hadeslee/archive/2008/08/07/220781.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>