大梦想家

5年开发工程师,2年实施经理,X年售前顾问,......
数据加载中……

2008年3月27日

Could not instantiate class XXX from tuple at AliasToBeanConstructorResultTransformer 的处理办法

今天客户方服务器上突然有一个功能保存了,查看日志信息后发现,错误信息:

Could not instantiate class XXX from tuple at AliasToBeanConstructorResultTransformer...

Google了很久才发现有可能是HQL语句中别名的问题,具体原因未知,现在处理办法是,将下面的语句中的别名去掉:

StringBuffer hql = new StringBuffer("select new ContractItem(l, "
+ " pi.unitPrice, " + " pi.currencyType, " + "pi.currencyTypeDisplay," + " pi.units, "
+ " sum(pi.quantity + pi.adjQuantity), " + " pp, " + " pi.task) "
+ " from PurchasePlanItem pi " + " join pi.purchasePlan pp"
+ " join pi.priorList l " + " where l.supplierNo = ?  "
+ " and pp.id in (");
具体是否可以解决,还要看一会儿的部署情况。

posted @ 2013-01-09 10:57 阿南 阅读(2254) | 评论 (0)编辑 收藏
在企业内部部署Chrome的课前预习

    上篇文章中我简单阐述了军工企业信息化遇到的困境,而我们公司(西安融智软件有限公司www.xardmu.com)则主要是面向军工企业进行软件产品的研发和定制项目的开发的。
    在产品实施和项目研发过程中,我们的前端技术人员需要做大量的浏览器兼容性的工作。痛苦至极啊~而且,即便完成了兼容性的修改,浏览器端的JS解析又变成了巨大的瓶颈!例如我们有一个项目为了提高用户使用的时的方便性,使用了EXTJS4,结果在IE6下性能极其低下。我们的P8是一个项目管理软件,需要使用到基于EXTJS的Gantt组件,但是此组件在IE6下十分不稳定,而且经常导致IE6崩溃。
   介于上面的种种问题,我们开始寻找从浏览器上解决问题的方法,例如使用FireFox或者Chrome,因为军工企业都有域,所以通过域安装一款软件是十分容易的。经过权衡,我们决定使用Chrome做为我们软件的入口。
   在企业内部署Chrome其实有三种方式:
   1.直接使用Chrome的某一个版本,对此版本进行精简和简单的参数配置,或者内置一些自定义的插件,直接进行部署。
   优点:技术门槛较低,只需要简单的精简安装文件和配置参数即可。
   缺点:无法通过统一的策略管理局域网内所有的部署情况和策略。
   2.使用Google提供的Chrome商业版,通过Google提供的商业版可以轻松定制自己企业内部的Chrome,并生成分发文件,同时可以通过配合域策略完成对局域网内的客户端的行为进行限制。
   优点:此版本是11年放出的,一直和多个大型企业紧密合作,相信不久将会形成更加完善的方案,从而在企业级应用市场站稳脚跟。
   缺点:需要在线安装。
   3.使用Google的Chrome Frame,一个让披着IE外壳的Chrome,拥有Chrome的所有性能,只是披着IE的外壳而已。
   优点:对于较老一些的企业,而且企业内部又拥有大量的IE时代产物的企业,绝对是一个好选择。
   缺点:需要在线安装。原有软件代码需要修改,才能在用户浏览时使用Chrome模式。

   看到痛苦了吧?都需要在线安装。看来下一步只能开始研究Chrome的源码,修改并编译属于自己的浏览器了。。。

posted @ 2013-01-03 12:37 阿南 阅读(495) | 评论 (0)编辑 收藏
查询Oracle的BLOB类型

最近在做项目的过程中,有些时候需要用Oracle的BLOB/CLOB类型存储一些很长的文章,一直不知道怎么来进行相关的检索,经过不懈的努力,终于能够解决这个问题了。查询语句如下:
 
select count(*) from 表名 where dbms_lob.instr(表名.列名, utl_raw.cast_to_raw(convert('关键词','utf8')), 1, 1) > 0;
 
需要注意的是,这个解决方案只能查询BLOB/CLOB中存储的是经过处理的字符串。
 
本方法在Oracle 10g上测试通过
转自http://commandos.blog.51cto.com/154976/128732

posted @ 2010-06-17 11:03 阿南 阅读(829) | 评论 (0)编辑 收藏
谁不知道构架?

    作为一个技术人员,谁不知道构架?

    前一段时间公司找开发人员谈心,有位领导问一位开发人员,大致对话如下:

    A:“你了解咱们现在产品的构架吗?能不能谈谈你对构架的看法?”

    B:“… …”

    A:“说说看吧~”

    B:“我不懂构架!构架是什么?咱们现在的产品还有构架呢?”

    作为一个有3年工作经验,2家公司经历的VC程序员来说,我觉得,这几年的积累是白做了!这样的思想永远都只能停留在写程序上~

    一个产品没有构件,就如同一个人没有灵魂一样!他不是没有,只是你没有去思考,没有去发现他而已!

    我记得袁洪刚说过,“一个伟大的产品背后一定有一个伟大构架师!”,我坚信这一点~产品好坏一方面决定于对现实问题的解决程度,另一方面是构架的好坏!

    几年前,中国的软件公司里面很少出现构架师/架构师这样的角色,这几年开始有改观了,越来越多的人开始认识到很多错误的问题,其实从一开始就是错的。很多事情并没有谋定而后动。一味的追求简单,到最后变成了下线很简单了!

   说自己不知道构架的开发人员有两种,新手和没有思想的新手,拼命的同时我们也应该停下脚步想想,抬起头看看天空。别总把经验的缺失都归结于时间的长短,更应该想想自己是否真的积累过。

posted @ 2009-07-03 16:33 阿南 阅读(1632) | 评论 (6)编辑 收藏
EJB3下无状态会话Bean发布为WebService

    无状态会话Bean发布为WebService是非常有意义的,因为如果我们将每一个EJB模块按照SOA的思想做成一个一个独立的服务模块(这里不讨论SCA,我认为Apache的SCA框架还不够强大,文档还不够全面),同样的代码在JavaEE体系之内的应用程序可以直接使用EJB3直接访问,JavaEE体系之外的应用程序可以直接使用WebService访问,这一点是非常有意义的。

    下面要考虑的就是如何只写一份代码,让它能做两样事情。

    网上有大量的使用EJB3发布WebService的教程,但是这些教程都是一个人写的,基本上没有太大的参考价值。最重要的是,他写的元注释都是写在实现类上的,接口上没有做任何描述。这种做法有两个问题,第一如果你的会话Bean使用了EM,那么麻烦了,JAXB在做绑定的时候不认识接口;第二WSDL文件的描述实际上应该是基于接口的描述,应该和实现类没有太大的关系。

    看看网上流行的代码:

 

1@WebService(name = "PurchaseArrival", serviceName = "PurchaseArrivalService"
2@SOAPBinding(style = SOAPBinding.Style.RPC) 
3public class PurchaseArrivalImpl implements IPurchaseArrival {

 

注意,基于RPC绑定模式下List,Set一类的接口都是不可传输的,这点会很麻烦,要用必须用实现类。

看看我的代码:

接口:

 

1@WebService(name = "ILogRemoteService",targetNamespace = "http://www.glnpu.com/dmp/xml"
2@SOAPBinding(style = SOAPBinding.Style.DOCUMENT) 
3public interface  ILogRemoteService {

 

实现类:

 

1@Stateless 
2@Remote(ILogRemoteService.class
3@WebService(endpointInterface = "com.glnpu.dmp.server.service.base.log.ILogRemoteService",serviceName = "LogRemoteService"
4public class LogRemoteService extends BaseService implements ILogRemoteService {

 

这个WebService是针对接口发布出去,而且使用的DOCUMENT样式,可以直接使用List、Set的接口。

这个WebService生成的WSDL文件很有意思:

 

 1<definitions name="LogRemoteService" targetNamespace="http://impl.log.base.service.server.dmp.glnpu.com/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:ns1="http://www.glnpu.com/dmp/xml" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns="http://impl.log.base.service.server.dmp.glnpu.com/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
 2
 3<import location="http://127.0.0.1:8080/LogRemoteServiceService/LogRemoteService?wsdl&resource=ILogRemoteService_PortType25057.wsdl" namespace="http://www.glnpu.com/dmp/xml" />
 4
 5<service name="LogRemoteService">
 6
 7<port binding="ns1:ILogRemoteServiceBinding" name="LogRemoteServicePort">
 8
 9<soap:address location="http://127.0.0.1:8080/LogRemoteServiceService/LogRemoteService" />
10
11</port>
12
13</service>
14
15</definitions>
16
17

 

里面有import来指引到真正的WSDL文件。这样很容易将会话Bean变成WS~一样的代码两样的功能,超值!

posted @ 2009-07-02 13:54 阿南 阅读(1926) | 评论 (0)编辑 收藏
Wazaabi 2.0 让我看到了自定义界面设计器的希望

    Wazaabi 2.0 基于 Eclipse3.4/EMF/GEF 的动态界面设计和现实组件,依赖EMF进行界面描述,依赖GEF进行界面显示。

    比较起XUI,XSWT,它的设计器更加的完善,功能比较1.0版本也有很大的提高,而且作者也提出了使用EMF进行数据绑定的思路和实现。

    麻烦的是它本身只提供了Fill和Row两种布局,Button、Text、List、Label这些基本控件。还好作者的文档功底不错,简单几张图就把自己的设计思路描述的清清楚楚,高手所为,赞一个!

   在它基础上可以很简单的进行扩展,而且比扩展VE要简单的多~这是我喜欢的!现在对它的使用本人还是处于观望态度,一方面等待它的持续更新,另一方面等待E4的激动人心的放出!

    有兴趣的朋友可以看看http://www.wazaabi.org/index.php?title=Main_Page

posted @ 2009-07-01 10:13 阿南 阅读(1968) | 评论 (1)编辑 收藏
不怕错,就怕不认错

    明显第一种构架比第二种构架好很多,但是我们偏偏在第二种构架上面挣扎了半年的时间。

    总是有各种各样的接口和推辞说业务太复杂,客户催的太紧,没办法把业务放到服务器上,成本太高了!已经是2009年了,10年前大家就意识到维护是关键,业务一定要封装,不能分散于客户端… …10年后的今天我们竟然还在挣扎!完全没有思想,完全没有设计,完全没有接口,完全没有OO… …!!!

    项目告一段落我要拼命的重构,彻底抽离公共业务,彻底剥离特殊业务,我要OO,我要接口,我要设计,我甚至还要SOA!

    我错了!我认错!可是为什么公司还有那么多的人还是不认错呢?做了10年的产品,10年前的东西竟然比10年后的东西还好用!做了10年还是死缠烂打在10年前的原型之上~他们比我更悲哀~

posted @ 2009-06-30 16:36 阿南 阅读(463) | 评论 (3)编辑 收藏
Lock wait timeout exceeded; try restarting transaction

   粗心大意,老犯错!

   今天上午在调试EJB3调用WebService时一直遇到MySQL报出的这个问题。郁闷坏了,只是执行了一句update而已,就导致这样错误… …

   经过半个小时排查,终于找到问题所在了。原因是分布式事务引起的。

   场景描述:

EJB3操作A表-->调用WebService-->WebService操作B表

    在操作A表的时候需要等待WebService的调用,如果没有异常,则可以提交事务,如果出现异常,则不能提交事务;

    在操作B表的时候需要处理异常;

    一个简单的分布式事务,一般情况下是没有问题的~但是由于我的粗心大意,做成了EJB3也在操作B表,这样就导致了表被锁死的情况出现~真是郁闷啊!

posted @ 2009-04-23 21:41 阿南 阅读(4259) | 评论 (0)编辑 收藏
如何使用代码重启RCP程序?

    以前我们的产品重启RCP应用程序的时候都是找到本地路径的EXE程序,然后使用:

1Runtime runtime = Runtime.getRuntime();
2runtime.exec("cmd.exe /c " + excuteStr );


重新启动应用程序,太复杂,而且上次打开的参数都会丢失。

    今天早上翻看了一下Eclipse的org.eclipse.update.ui CVS,找到了:
PlatformUI.getWorkbench().restart();
使用这个重新启动RCP应用程序,非常的方便,而且参数都在,即使在开发环境下也一样没有问题!

posted @ 2009-03-17 18:53 阿南 阅读(1547) | 评论 (1)编辑 收藏
How to show taskbar icon when use splash?

    这个问题非常的重要!
    做过RCP开发的朋友应该都遇到过,使用AbstractSplashHandler做的登陆界面,在windows的任务栏上面是不会显示的,这个问题让客户用起来很麻烦,总是动不动就找不到登陆界面了!现在有解决办法了~

 1Here is the modified Code of the InteractiveSplashHandler Class:
 2
 3
 4    private Shell splash;
 5
 6
 7    public void init(final Shell splash) {
 8        // Shell replaced by one with task bar icon
 9        // (old Style: SWT.TOOL, new Style: SWT.NO_TRIM)
10        replaceShell(splash);
11        // Store the shell
12        super.init(getSplash());
13        // Configure the shell layout
14        configureUISplash();
15        // Create UI Colors and Fonts
16        createColorsAndFonts();
17        // Create UI
18        createUI();
19        // Create UI listeners
20        createUIListeners();
21        // Force the splash screen to layout
22        splash.dispose();
23        getSplash().layout(true);
24        // Keep the splash screen visible and prevent the RCP application from
25        // loading until the close button is clicked.
26        doEventLoop();
27    }

28
29
30    private void replaceShell(Shell splash) {
31        Shell newSplash = new Shell(Display.getCurrent(), SWT.NO_TRIM);
32        newSplash.setBackgroundImage(splash.getBackgroundImage());
33        newSplash.setBounds(splash.getBounds());
34        newSplash.setFont(splash.getFont());
35        newSplash.setVisible(true);
36        setSplash(newSplash);
37    }

38
39
40    public Shell getSplash() {
41        return splash;
42    }

43
44
45    public void setSplash(Shell splash) {
46        this.splash = splash;
47    }

48
49

稍稍进行改造,就可以了~

posted @ 2009-03-15 20:59 阿南 阅读(1286) | 评论 (0)编辑 收藏
VE真的回来了

    VE已经死亡很久了,整个Eclipse社区中,最悲壮的真的要属VE了。
    伟大的目标,没落的贵族!记得去年在北京的时候,经常有朋友问我VE怎么安装。呵呵VE2.0开始安装真的很复杂,偌大的Eclipse-WIKI里面还真的没有写多少关于VE安装的内容。
    去年下载过VE的源码,打算在VE的基础上做一个自己的设计工具,但是研究了很久,发现CVS上的源码都过于陈旧了,然后就再也没有关注过它了。
    很久没有真正的关注过Eclipse了,今天上来看看,发现VE真的回来了!
    现在VE的领导者是深圳的亚松(在西安有分公司,我还真想去试试... ...),而亚松最让我崇拜的大牛就是Yves YANG,呵呵,EclipseWord的大牛哦!
    我在自己公司的产品里面也引入了建模的概念,下一步就是根据模型来生成界面,再下一步就是改造VE,让二次开发人员开发起来更容易更加简单。
    祝福VE,希望有了亚松,VE会更好。
 

预告下一个系列文章:
    企业信息系统建模的思考;
    新VE源码分析;
   

posted @ 2009-03-15 15:38 阿南 阅读(1500) | 评论 (1)编辑 收藏
最好的软件界面绘制工具http://www.balsamiq.com/

我见过最好的软件界面绘制工具http://www.balsamiq.com/
真正能达到又快又好!





posted @ 2009-02-11 11:38 阿南 阅读(2379) | 评论 (0)编辑 收藏
初谈激情

    做人何惧艰险,豪情不变年复一年,做人有苦有甜,善恶分开两边,都为梦中的明天!
    上面这段签名是抄老莫的,每读一次都会有不同的体会。
    没有维护Blog已经有两个多月了,这两个月一直在北京出差,已经待了两个月了,还得再待一个月!每次出差离开西安总是感觉不舒服,而且从心里要好长时间才能适应,所以就一直没有维护Blog。
    晚上和一位美女吃饭,聊天中突然聊到了这个问题,仔细想想为什么做什么都觉得没有意思?为什么会不适应外界环境的改变?为什么觉得一切都不爽?
    是因为没有了激情,最近缺少了激情!缺少了创造的激情,缺少了生活的激情,缺少了工作的激情,缺少了写Blog的激情... ...
    重拾激情,这才是重要的!做人何惧艰险!人生路上本来就充满了艰险,要勇敢面对,无论是失意还是快乐... ...何必在乎得失,终究一切都会过去!抓紧时间,去实现自己梦想!

posted @ 2008-07-20 23:45 阿南 阅读(462) | 评论 (4)编辑 收藏
Eclipse3.3-3.4MX多国语言项目放出

    老版本的Eclipse多国语言项目只维护到3.2.1版本,以后就再也没有维护了,我觉得主要的问题是,语言包太大,一个包中会有多种语言,对于RCP版本的产品汉化起来很不舒服,明明我只要中文,结果要加入N个语言进来,而且还是20M的包~
    Eclipse的http://download.eclipse.org/eclipse/downloads/最近刚刚放出一个叫做Babel project的项目,这个项目就是在解决国际化的问题,这个项目旨在为每一个插件提供独立的单语言包,这样在做RCP项目的时候,可以根据需要,打不同的包就可以了~!
    周五的下午测试了一下,汉化率绝对在99%以上,而且很多地方的汉化还是很到位的~再有哪些客户看不懂的地方的了~
    只是有一个很小的麻烦,就是RCP原来的异常对话框中的内容,每一句后面都会有\n,莫非多国语言的时候\n被转义了?
    希望可以得到改进!

posted @ 2008-04-27 09:33 阿南 阅读(3152) | 评论 (4)编辑 收藏
来自Neil Bartlett 的OSGI BOOK 一个预览版本放出

    Neil Bartlett的当下工作就是完成《OSGi in Practice》,今天他在Blog中已经放出了本书的一个预览版本(第二章)。一下是书的目录:

  • Introduction
  • First Steps in OSGi
  • Bundle Dependencies
  • Introduction to Services
  • Example: Mailbox Reader GUI
  • The Whiteboard Pattern
  • Declarative Services
  • The Extender Pattern
  • Integrating Third-party Libraries
  • Building Web Applications

    从PDF的授权看是“署名的,非商业的,可流传的”,我估计这本书上市的时间应该很近了,而且官方的PDF版本也会同步推出的~

    喜欢的朋友可以下下来看看,写的很详细,个人认为是本好书,而且此作者应该是Eclipse基金会的人,所以对OSGI的理解也不错有什么问题~

  • ps:连接地址:http://neilbartlett.name/blog/osgibook/

    posted @ 2008-04-18 12:41 阿南 阅读(1623) | 评论 (3)编辑 收藏
    SQL文件中有Functions,Type如何在sqlplus中执行?

        SQL文件中有Functions,Type,那么在sqlplus中要start直接执行SQL文件怎么办?例如:

    CREATE OR REPLACE FUNCTION strcat(input varchar2 )
    RETURN varchar2
    PARALLEL_ENABLE AGGREGATE USING strcat_type;

        将上面的Functions写入SQL文件中,然后在sqlplus中用start执行此文件,后果是此Functions并没有被创建到数据库中,在后面加上commit;也是没有用处的,提示的效果是SQL并没有结束,sqlplus并没有真正执行。

        这怎么办?Google了老半天,也没有人写到这个问题,但是看看人家写Functions和我写的有一点点区别,修改一下!

    CREATE OR REPLACE FUNCTION strcat(input varchar2 )
    RETURN varchar2
    PARALLEL_ENABLE AGGREGATE USING strcat_type;
    /

        在Functions最后一行加上一个/,再执行就OK了~看来sqlplus是把/作为一个Functions或者Type的结束符了!大家注意了!

    posted @ 2008-04-15 16:04 阿南 阅读(1845) | 评论 (2)编辑 收藏
    注意!Shell.open()

        Shell.open()非常重要!

        今天在做SWT中显示OCX控件,照着Demo写的,但是不知道为什么每次执行到:Variant pVarResult = auto.invoke(dispIdMember, rgvarg);

       JVM都会直接退出~error如下:

    #
    # An unexpected error has been detected by HotSpot Virtual Machine:
    #
    #  EXCEPTION_ACCESS_VIOLATION (0xc0000005) at pc=0x73d321b9, pid=3696, tid=2208
    #
    # Java VM: Java HotSpot(TM) Client VM (1.5.0_04-b05 mixed mode, sharing)
    # Problematic frame:
    # C  [MFC42.DLL+0x21b9]
    #
    # An error report file with more information is saved as hs_err_pid3696.log
    #
    # If you would like to submit a bug report, please visit:
    #   http://java.sun.com/webapps/bugreport/crash.jsp
    #

    [error occurred during error reporting, step 270, id 0xc0000005]

    寻便了网络也没有解决办法,刚开始以为是JVM版本的问题,于是换了3个版本都是同样的问题~真是郁闷!

       最后通过和Demo代码的比较,发现Demo中有一句shell.open(),注释掉此句,Demo也是引起JVM退出!在代码中加入shell.open(),搞定!

       原来这个open方法还有这么多的玄机啊,但是javadoc上却只字未提!

    posted @ 2008-04-14 20:10 阿南 阅读(2062) | 评论 (0)编辑 收藏
    今天愚人节,被Google欺骗了!

    早上看到Google的人肉搜索的招聘广告,兴冲冲的发了邮件,申请,结果:

    尊敬的朋友,
    非常感谢您在4月1日积极参与谷歌人肉搜索志愿者招聘,这是谷歌于2008年4月1日"愚人节"推出的让大家"会心一笑 暂解烦忧"的小笑话,在此谨祝大家"愚人节"快乐,天天快乐。
    如果您对谷歌公司招聘感兴趣,欢迎进一步登录我们的招聘网站寻找自己真正心仪的职位。http://www.google.cn/intl/zh-CN/jobs/
    谷歌肉搜组
    Dear Friends,
    Thank you very much for your interest in the job positions of Google's "Grassroots search" volunteers on April 1. This is a joke that Google China does on April 1, 2008 to give you some light-hearted mood. Hope you laughed because of it :-). Here, we want to wish everyone "Happy April 1st day and Happy Everyday."
    Google Grassroots Search Engineer and Product Group

     

    晕~被欺骗了!写的跟真的一样的:

    关于人肉搜索

    什么是人肉搜索?

    人肉搜索与刺青、美白、护肤、减肥等直接在人肉上施行的种种行为无关。顾名思义,人肉搜索就是利用现代信息科技,变传统的网络信息搜索为人找人,人问人,人碰人,人挤人、人挨人的关系型网络社区活动,变枯燥乏味的查询过程为一人提问、八方回应,一石激起千层浪,一声呼唤惊醒万颗真心的人性化搜索体验。人肉搜索不仅可以在最短时间内揭露某某门背后的真相,为某三某七找到大众认可的道德定位,还可以在网络无法触及的地方,探寻并发现最美丽的丛林少女,最感人的高山牧民,最神秘的荒漠洞窟,最浪漫的终极邂逅…… 人肉搜索追求的最高目标是:不求最好,但求最肉。

    谷歌为什么要创建人肉搜索引擎?

    谷歌自进入中国市场以来,一直致力于根据本地需求改进用户的搜索体验。谷歌很早就意识到,自发的、分散的、有意或无意的人肉搜索行为早在中国互联网诞生之初就存在并茁壮成长着。中国互联网界发生的几乎每一起重大事件,尤其是娱乐性事件,都有可能成为人肉搜索技术的试金石。为了丰富人民群众的业余文化生活,为了使广大网民在最短时间内赶超人肉搜索的世界水平,谷歌决定投入巨资打造亚太地区最大的人肉搜索引擎。

    谷歌人肉搜索引擎有哪些特点?
    • 规模最大:第一期工程拟招募人肉搜索志愿者2500万名,完成后将成为亚太地区最大的人肉搜索引擎。
    • 创新最多:256项专利技术,1024篇相关论文,4096次用户调研,65536轮预览版测试。
    • 领域最全:搜索范围涵盖娱乐、影视、体育、社会、名人、百姓、历史、地理、物种、太空等领域。
    • 速度最快:平均查询响应时间32秒。
    • 挖掘最深:曾在预览版测试中,用时128秒,成功定位了中国大陆生产的第一只自动冲水马桶。

    人肉搜索招聘需求

    人肉搜索志愿者管理专员

    组织和领导以志愿者为核心的超大规模人肉搜索团队,整合来自数千万搜索志愿者的小道消息,从茫茫人海中发掘信息背后的奥秘。严格管理,制止人肉搜索过程中可能出现的扯皮、造假、谣传、起哄、攻讦、谩骂等不文明行为,创造合理、有序、创新、务实的人肉搜索新秩序。

    能力要求:

    • 博士以上学历
    • 管理学、传播学或相关专业毕业
    • 掌握五种以上方言
    • 有八卦主义精神和凡事不着调作风者优先

    请将您的中英文简历以文本或HTML的格式发至renrou-jobs@google.com, 并在邮件的标题中注明“人肉搜索志愿者管理专员”。邮件正文请使用中文,所有英文信息请以附件形式提交。

    人肉搜索志愿者(兼职)

    在业余时间为人肉搜索引擎奉献智慧、汗水和好心情。利用谷歌研发的人肉搜索平台,与其他数千万志愿者并肩工作,使用并行人肉计算的方式,对疑难问题坚持不动摇、不软弱、不抛弃、不放弃的肉骨茶原则,为广大网民提供第一手的,带有人情味儿的,具有震撼力和可传播性的搜索结果。

    能力要求:

    • 学历不限,专业任选
    • 有强烈的好奇心和求知欲
    • 对常人无法获取的信息有敏锐的感知能力和打破砂锅问到底的坚定信念
    • 自备联网电脑一台,电话机一部,粉笔若干,餐巾纸一箱,《八卦人物风云榜》16开大字本一套共40册

    请将您的中英文简历以文本或HTML的格式发至renrou-jobs@google.com, 并在邮件的标题中注明“人肉搜索志愿者(兼职)”。邮件正文请使用中文,所有英文信息请以附件形式提交。

    致猎头公司:对于未签约的猎头公司提供的简历,谷歌将不支付任何费用。

    posted @ 2008-04-01 10:24 阿南 阅读(728) | 评论 (2)编辑 收藏
    RAP再次放入令人振奋的Demo

        此次RAP放出了draw2d_in_RAP的Demo,主要展示的是draw2D在RAP框架上的应用,还没有下载真正的Demo试用,但是从视频上看,好像是融合了flex来做图形展示和拖拽,有兴趣的朋友可以看看Demo的代码,然后告诉我~

        上次e4放出的基于web的IDE就使用flash作为代码展示和编辑的编辑器,看来Eclipse社团也感觉到纯的js基本上不能完成任务了。

    Demo下载地址:http://www.innoopract.com/fileadmin/user_upload/Bilder/Films/draw2d_640x480.mp4

    posted @ 2008-03-27 12:29 阿南 阅读(2533) | 评论 (2)编辑 收藏