2009年1月31日星期六

终于可以在winxp里用jdbc连接sqlexpress(即sqlserver2005 xp版)

经过反复尝试,终于可以在winxp里用jdbc连接sqlexpress(即sqlserver2005 xp版)
 
打开"sql server外围应用配置器",点击"服务和连接的外围配置器"
将"远程连接"菜单中的"本地连接和远程连接"选项改成"同时使用TCP/IP和named pipes"
然后,重启sqlexpress实例
 
打开"sql server configuration manager",选中"sqlexpress的协议"菜单
双击右边的"TCP/IP",将弹出窗口的协议tab中的"全部侦听"改为"否"
然后,将ip地址tab中的"TCP端口"填上1433,特别是IPAll,127.0.0.1两项
再将127.0.0.1 ip下的"已启用"选项改成"是",即本机可以连接
再次重启sqlexpress实例
 
打开"microsoft sql server management studio"工具,用"windows身份验证"方式登录sqlexpress实例
进入studio菜单树,右键第一级节点,即sqlexpress,选择"属性">>"安全性",
将"服务器身份验证"选项改成"sql server和windows身份验证模式"
如果要用sa登录,还要到"安全性">>"登录名">>"属性">>"状态">>"登录"选项改成"启用"
 
最后,可以加载sql2005的jdbc jar文件,连接sqlexpress数据库了,它的jdbc参数值如下:
jdbc:sqlserver://127.0.0.1:1433;databaseName=demo_db
com.microsoft.sqlserver.jdbc.SQLServerDriver

2009年1月8日星期四

oracle整合后bpm培训经验分享

参加了oracle bpm动手试验培训,感觉bpm基本上是沿用以前BEA的bpm,只不过设计工具换成了Eclipse。
 
课程做到第九步走不下去了,直接导入Lesson9的exp文件,发现是少了一个屏幕流,其他就比较顺利了。
 
具备的功能:
1、可以导入/导出BPM项目(.exp文件),通过eclipse的import、export
2、可以通过You are here,查看当前流程运行到哪个节点
3、通过按照真实场景设置处理人,空闲时间,处理能力等参数,模拟仿真,可根据仿真结果(柱状图等)分析出流程在哪个节点是瓶颈
然后,可以通过修改、分离流程节点来调优流程。
4、可设置实例变量、项目变量。将一些规则常量设置成变量,可以通过Edit Business rule角色在运行期进行动态修改。
5、支持分支流程、子流程。通过输入变量、输出变量同父流程进行协作。
6、子流程的调用可以采用同步、异步两种方式。异步方式时,主流程还可以短暂等候,在子流程部分完成时主动通知父流程继续处理。
7、表单交互采用屏幕流方式。bpm根据设置参数自动生成表单页面,可以对表单进行调整、修改。
8、web控制台有收件箱、审阅、填写审核意见、添加附件、监控运行状态、动态修改运行变量等功能。
如Edit Business Rule,Workload Distribution。
9、可以设置角色、用户、组等权限。
 
还存在的疑问:
1、如何集成企业已有的组织架构到工作流的角色、组?
2、如何开发自定义jsp,以及如何将自定义作为流程表单?
3、自定义jsp如何分配细粒度权限,比如表单的某些域只能被某个角色看到或者修改?
4、如何调用webservice,jms等外部接口?
5、如何实现定时触发某个流程,启动该流程实例(授课老师讲到可以轮询谋张表是否有新的记录出现,有则触发新的流程实例)?
6、听说既可以支持xpdl也可以支持bpel,不知道如何实现支持bpel规范的流程定义?
7、开发环境可以直接运行,但实际部署时是否需要与数据库搭配起来,即是否需要创建特定的bpm中间表?流程运行信息是否保存到中间表中。
8、培训老师说bpm也可以完成一些ESB的工作,因为有些企业部署bpm时并没有部署ESB,所以bpm具备一些ESB功能,但具体效果如何?
 
总结:
oracle bpm总体上功能比较强大,但在工作流产品的一些难点上还是存在一些不确定性,需要继续探究其某些特性。
 
附上自己从网上找到的oracle bpm pdf内容:
关于是否需要外部数据库:
    BAM data is stored within a database. In Oracle BPM Studio, this information
is stored internally as part of the embedded process execution engine database.
    In Oracle BPM Enterprise, you must configure an external database to function
as the BAM database.
 
Engine and Directory Database Connectivity
The following connectivity properties are required when configuring Oracle BPM Enterprise.
These connectivity properties are used when configuring JDBC drivers and directory services. They are used
to connect to the following databases:
1、Engine Database        --引擎数据库
2、Directory Database    --组织架构的LDAP数据库
3、BAM Database           --BAM数据库
4、Archive Database        --归档数据库
 
支持集群:
Enabling Clustering
If you are configuring your Oracle BPM Enterprise to run within a clustered J2EE environment, you must
enable clustering using the Process Administrator.
 
自定义jsp表单
    There is a complete example, which shows the use of JSPs combined
with BPM Objects in the sample directory of your Studio installation.
The project name is FoodDelivery.fpr.
    In this section you will find useful examples about using different
HTML form components. In all the examples we will use as the JSP
BPM Object a person of type Person.
 
Creating the JSP
    The JSP should be created in any external editor outside the Studio.
Once it has been created it should be imported into the project
including its resources. The JSP is a regular one containing the
following special features which allows you to use the BPM tag
libraries in order to access the BPM Object's attributes and methods:
Make you have included the following line at the beginning of the
JSP:
    At the very beginning of the JSP file you should import the BPM tag
library and the java standard tag library (advisable but not required)
as follows:
<%@ taglib uri="http://java.sun.com/jstl/core" prefix="c" %>
<%@ taglib uri="http://fuego.com/jsp/ftl" prefix="f" %>
 
 

2008年12月25日星期四

maven2真是强大,特别是索引功能,很方便搜索与查找

maven2 eclipse插件m2eclipse的索引文件建立在下面路径下
.metadata\.plugins\org.maven.ide.eclipse\nexus
 
在编辑pom时,可单击下面"Add Dependency"按钮:
 
然后,录入你要查找的api名,就可以看到自动索引出来的匹配结果:
 
可以集中查看Dependency Hiberarchy(依赖层次):
 
还可以查看依赖图(Dependency Graph)
 
如果用Nexus来作为私服的话,可以设置代理(Proxy repository), 如下面:
 
在Sonatype Nexus里面同样有高级搜索,如下面:
 
还可以将指定的jar等资源文件下载下来(单击artifact):

发现apache camel1.5有篇很经典的文档

发现apache camel1.5有篇很经典的文档
apache-camel-1.5.0\doc\manual\camel-manual-1.5.0.pdf
里面有许多关于router,ActiveMQ等结合的具体例子

如何解决测试本地Applet时出现access denied问题

可直接修改{JRE_HOME}\lib\security\java.policy文件,
加入
grant {
permission java.security.AllPermission;
};
或者
permission java.util.PropertyPermission "user.dir", "read";
然后,在出错的applet地方右键选取控制台,按s键,即重载java策略配置文件,确定
回到网页上来,刷新网页即可看到applet可以看到了。

如何修改maven2本地repository到另外一个文件夹

修改{MAVEN2_HOME}\conf\setting.xml,如下所示:
<settings>
  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ~/.m2/repository
  -->
  <localRepository>F:/work/maven/repository</localRepository>
 
如果你安装了m2eclipse插件,还需要将
preferences >> maven >> installations 中的
User Settings改为你的{MAVEN2_HOME}\conf\setting.xml
这时,Local Repository会自动定位到却换后的repository上来。

2008年12月17日星期三

LifeKeeper软件介绍(高可用容错集群软件)

 
从下面介绍看,个人觉得很不错

美国SteelEye公司的LifeKeeper 是一种支持多种软(WindowNT, Windows2000, 多种Linux等)、硬件平台的高性能容错软件,最多可支持16台服务器集群。Lifekeeper软件源于美国NCR公司及著名的AT&T贝尔实验室。为企业、银行、政府等的信息服务,商务服务,政务服务等提供高可用性解决方案。

 LifeKeeper属于高可用容错集群软件,运行于NT、Windows 2000、Linux和NCR Unix平台。同时支持纯软件镜像方式和共享磁盘阵列柜方式,并支持远程灾难实时复制备份恢复系统。使用户的服务器、操作系统、数据库系统以及关键的数据及应用程序保持7天×24小时连续不间断,提供99.99%的高可用性。软件包括核心部分和一些针对不同应用的ARK。

LifeKeeper的关键特点

 1.不用增加任何额外硬件投资,纯软件方式实现双机容错,且对备机无硬件配置要求。
 
 2.可支持Notes、Exchange、SQL Server、Sybase、Informix、Oracle 、SAP等多种系统的应用层热恢复。
 
 3.是全球第一套基于NT操作系统的容错软件并同时支持LINUX平台。支持远程灾难备份。
 
 4.支持共享磁盘阵列柜和扩展镜像两种方式,给用户提供了选择上的灵活性,同时也能适应各种机型、网络结构、软件平台及应用系统。
 
 5.LifeKeeper在扩展镜像或共享磁盘阵列任意方式下,均能实现两台服务器各自运行不同应用且相互热备份,即实现双Active运转模式。
 
 6.使用共享磁盘阵列柜方式时,最多可以支持16个节点,远远大于其它类似系统所支持的2个节点数。
 
 7.最大限度地保护用户端的应用连续性。用户的硬件资源(如网卡),软件资源(如NT操作系统、数据库管理系统、数据库应用系统、电子邮件系统等)均能处于LifeKeeper的保护之下,当这些被保护资源出现技术故障时,LifeKeeper可随时实施系统资源切换。如此,LifeKeeper真正实现了用户硬件或是软件资源发生故障时系统及应用层上的在线热切换。
 
 8.LifeKeeper占用系统资源极少,不增加网络负荷,且不打扰任何具体应用系统的任何操作。
 
 9.LifeKeeper真正实现无人值守,全自动地实现应用资源切换,且图形界面操作,简单方便。
 
 10.自投入使用以来,已经历了大量交易高峰的实际考验,其执行效率很高且运行十分稳定可靠,全球市场占有率第一。