思想即力量 – Think from Song1w – EVIS.ME
终于算是有些时间,可以试试Google新推出的App Engine的Java语言支持。 Finally got some time to have a trial on Google App Engine – the Java Language. 我下载了Eclipse 3.4.1企业开发版并从更新站点安装了Google插件。在Google插件的帮助下,我在新工程里创建了一个简单的留言簿(GuestBook)模块,并根据文档和范例,写了一个留言(Comment)服务,下面跟用JDO(Java Data Objects)实现的DTO/DAO(Data Transfer/Access Objects)接起来。为了单元测试DAO,还依照GAE官方提供的方法写了JUnit test用的基类来创建App Engine的本地环境。 I’ve downloaded an Eclipse 3.4.1 EE and installed Google Plug-in for Eclipse via the update site. Using the Google Plug-in, I’ve created a GuestBook module, then a Comment service, [...]
In: 技术
15 二月 2009从Google日历的英文版界面发现Google推出了新功能,与iPhone同步。现在只支持了同步通讯录和日历两个项目。使用iPhone的用户可以参考官方指南:http://www.google.com/support/mobile/bin/answer.py?answer=138740&ctx=sibling&topic=14252。 而这个功能的实现方式很有趣。从配置步骤中可以看到,这个同步使用了Microsoft Exchange。难道Google买了微软的Exchange Server?从竞争关系上看感觉不太可能。也许Google仅是使用了Exchange的协议和标准而已,毕竟更好地支持iPhone会有可观的回报。 这是好消息,这意味着不只iPhone,手机版的ActiveSync软件都可以连接Google进行同步了。笔者的手机是索爱的G700c,预装有ActiveSync的Symbian/UIQ版本,其他手机没有测试过。下面简要介绍一下配置使用的步骤。 设置步骤 用索爱的官方软件备份手机,尤其是通讯录和日历。 在Google申请一个GMail账号,这也是各种Google服务可以通用的Google Account。如果已经有了,最好确保GMail的通讯录和Google日历都是空的,这样第一次同步会轻松很多。 运行手机的ActiveSync,在配置向导中,按照上边Google提供的指南配置同步账户,其中不太一样的是,用户名需以@gmail.com的后缀结尾,而连接互联网则需要用到GPRS。账户验证成功后才能进行下一步。 在配置中,勾选同步日历、同步通讯录,但同步邮件不能勾选,因为Google截止本文发稿时尚未支持邮件的Exchange同步。 进行第一次同步的时候,ActiveSync应该会提示是打算覆盖(覆盖掉手机数据)还是合并。这时选择合并,会把手机端的通讯录和日历上传到Google。同步的GPRS数据流量也许会上百KB。两边只有有这样一次一致过,以后的同步基本上就不会出问题,而且流量会比较小。 第一次同步成功后,可以登录自己的GMail查看一下通讯录,顺便再看一下Google日历。这时手机上有的项目,Google上应该都有。 为手机的ActiveSync配置同步频率,比如1小时,不推荐“推入”,费用比较高而且费电。 之后可以在手机上或GMail、Google日历里增改项目。两端会自动保持同步。 可以尝试一下把http://www.google.com/calendar/ical/china__zh_cn@holiday.calendar.google.com/public/basic.ics下载下来并导入到自己的Google日历里,经过同步以后手机日历也能显示中国节假日了。 疑难问题 如果手机以前已经配置过ActiveSync并可以正常使用,那么这款工具是不支持添加多个账户的。方便起见,可以选择卸载手机上的ActiveSync软件。索爱官网支持频道有这款软件最新版的下载。下载后再次安装到手机上,就可以重新配置账户了。 笔者在与Google首次同步过程中还发生了同步失败的情况,而这时去GMail里查看通讯录,条目已经进去一半左右。反复尝试未果,笔者便从自己PC机的Outlook中导出了通讯录(与手机上的内容一致)的CSV文件(Windows,逗号分隔),在GMail通讯录中删除刚才导入的,然后用其导入功能导入此文件。再次运行手机ActiveSync同步,同步成功,但手机和Gmail通讯录中各多出一些重复项(不是全部)。手工删除两端的多余的重复项目。再次同步,终于正常了。 同类服务 Google的GMail和日历都是免费服务,其同步功能也没有看到付费条款。当然,Google也有用于中小企业的Google Apps这样的付费版本。而在线Exchange服务提供商还有其他选择。比如笔者曾试过www.mail2web.com的服务,同样也可以由手机端的ActiveSync进行同步,这个网站后台应该是完整的Microsoft Exchange Server,所以可同步项目更全,包括了邮件、通讯录、日历、任务、便签等,缺点是从大陆这边的连接有点慢,也许它的收费服务会好一些。 扩展话题 从主题引申一下。手机是工具,这是这篇文章的基本假设。 在开源越来越活跃的今天,手机的数据和操作也慢慢从品牌私有的格式转向了符合一定的标准。通过对身边的一些人的观察,视手机为工具的人们往往不愿意换新手机,哪怕旧手机使用起来已经很不方便了。原因至少有一条,手机里边的通讯录很重要。广义来说,手机里的私人数据往往对于所有者都很重要。大部分品牌手机会提供可以在PC机上运行的同步软件或备份软件,而这些软件往往又把用户禁锢某一品牌甚至某一型号的手机上。只有这类同步符合一定标准,用户的选择权才能得以发挥。这就产生了新的市场机会,市场需要第三方来完善数据同步的解决方案。也正是应对这样的需求,个人信息管理软件(PIM)渗透到了移动设备的领域,微软有Outlook和Exchange Server;IBM有Lotus Notes和Domino Server;而Google则是先后提供了GMail、Google Calendar的在线服务。 编者按:用手机记一些私人事情时,无论缓急,可以优先考虑用手机自带的日历来记。这样可以让手机帮自己做日程管理,也锻炼了自己的时间观念。
In: 技术
22 一月 2009之前本来想查一下iMac的售价,却发现普通PC安装苹果的Mac OS X系统已经不是难事了。心血来潮是挡不住的。当天就从淘宝购入一张iATKOS v5i的DVD刻录盘。几经波折,一台半旧的ThinkPad X31变成了MacBook(疑似)。 参考资料主要就是http://www.osx86project.org/。因为硬件比较老,却又想安装比较新的10.5.5系统,安装过程基本上就是穷举法。安装过程如下: 这台X31原装XP HOME系统,分成C、D、E三个区。为了装MAC OS,用PQ将D盘空出来,并设置为活动(Active)分区。 重启并以外接DVD-ROM(品牌为阿帕奇,须在开机后Ctrl+S的界面中设置为Legacy OS wake-up)和iATKOS光盘引导机器。 在白苹果界面等了很久,进入安装界面,先点击下一步的按钮。 在屏幕顶部出现菜单后,从Utilities中点选Disk Utility,在主界面选择刚才空出的D盘(由分区容量判断),右边选择Erase标签,分区格式切换为MAC OS Extended (Journaled),点击Erase按钮进行格式化。结束后点击左上角关闭此工具。 回到安装界面,一直下一步。当提示选择Destination,选择刚才格式化的分区即可。下一步先不要急着开始安装。 点左下角的Customize按钮,安装程序会允许更改部件。严格按照前边的英文说明配置的话,可以把MAX OS X系统安装成为Updatable,即可以自动在线更新的系统。但看来X31是无福消受了:默认安装会导致无法启动。下面的配置是这台X31唯一一次安装成功并可以正常使用的。 iATKOS v5i Main System: Checked Bootloader: Choose Chameleon only X86 Patches Decrypters: Choose dsmos only SMBIOS drivers: Choose AppleSMBIOS netkas in SMBIOS’ for X86 only Kernel: Choose 9.2.0 Kernel ToH ACPI: Choose APIC [...]
本博客的源代码,即定制开发的BlogEngine.NET,现已开源并托管在Google Code Hosting。网址是:http://evis-blogenginedotnet.googlecode.com/。 The source code of this blog, which is developed based on BlogEngine.NET, is now open source and hosted at Google Code Hosting. The URL address is http://evis-blogenginedotnet.googlecode.com/. 为应对Ms-RL协议相应条款,本博客引擎名称改为EvisBlog.NET。其他详细信息请参考之前的文章:Welcome to EvisMe.BlogEngine.NET using Microsoft Access database。 This blog engine is renamed to EvisBlog.NET in reaction to the related items of Ms-RL license. For other [...]
In: 技术
15 一月 2009很多博客、播客乃至其他一些应用都支持订阅源(Feed),比如提供RSS、ATOM。从技术层面看,RSS或ATOM分别都是一种XML标准。订阅者无论使用哪一种订阅工具(或阅读器,news reader),无论这种订阅工具是在线的还是离线的,只要订阅工具支持RSS等标准,订阅者就可以脱离原网站,以自己习惯的方式阅读网站的内容。 凡是为读者提供订阅源的网站,都不约而同的要把这个Feed “烧(burn)”一下。简单的说,烧一下就吸引眼球了,烧一下就有钱途了。说到比较著名的第三方“烧源”服务商,国际上有最近刚被Google收购的http://www.feedburner.com,国内比如http://www.feedsky.com,两者服务大同小异,或者说很像。 相信FeedBurner被Google收购后,会被更多国内博客、站长选择——整合了Google的在线广告业务AdSense。 跑题远了,FeedBurner有一项免费服务:预览页面(Optimize –> BrowserFriendly),能把目标RSS在浏览器中漂亮的展示出来,还提供进一步订阅的链接按钮。例子可以参考http://www.feedburner.com/fb/i/bf/new_style_zoom.gif。 目标 为自己的Feed加入新的订阅工具,如国内的鲜果、抓虾。 效果 步骤 详见http://www.google.com/support/feedburner/bin/answer.py?answer=78963。 简单来说,要对目标工具定制一个“小鸡仔(chicklet,个人翻译)”,其实是一段XML。然后上传到某一网址。接下来在BrowserFriendly设置页面点击More Subscription Options,如下图。 加入网址,点击Add(没反应就多点几次),在新出现的图标前打勾,如下图。记得保存。 之前有国内的网友制作了一些并放到了Google Pages上。博主也简单做了两个,网址分别是: 鲜果:http://evis.me/tools/feed/xianguo_com-feedflare.xml 抓虾:http://evis.me/tools/feed/zhuaxia_com-feedflare.xml
这里是Song1w的个人博客,分享一些想法、设计和自娱自乐。原创为主,内容为主。
This is a personal blog of Song1w. The think, design and entertainment contents are shared here, most of which are created by Song1w himself.