熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> JSP教程 >> 正文

使用工作流引擎Wfmopen中的陷井

2013-11-15 11:50:56  來源: JSP教程 

  按照WFMOPEN的用戶手冊上的說明 短短的幾句話似乎可以在二十來分鐘就讓WFMOPEN運行起來但是實際上我從昨天下午到今天上午:一共用了個小時才把WFMOPEN的例子運行起來整個過程中有很多陷井
  
  PITFALL ONE
  
  准備數據庫的時候要注意如果你用JBOSS自帶的HYPERSONIC數據庫的話要知道HYPERSONIC有兩種連接方式一是通過TCP另外一種是INMEMORY
  
  在TCP方式下 啟動JBOSS以後才能執行初始化數據庫的操作而且在JDBCPROPERTY ($DIST\wfmopenbin\lib\wfdemo)要使用的是database=jdbc:hsqldb:hsql://localhost:(不需要改動)因為JBOSS 以後默認的是INMEMORY方式所以要用TCP方式必須要告訴JBOSS我要用TCP方式具體方法是: UNZIP JBOSS 以後
  
   在$JBOSS_HOME/server/default/deploy/hsqldbdsxml中 UNCOMMENT
  <connectionurl>jdbc:hsqldb:hsql://localhost:</connectionurl>
  並且把其它的<connectionurl>tags都給COMMENT掉
   
   在$JBOSS_HOME/server/default/conf/jbossservicexmlMonitoring and Managementstatements 後面加一句:
  <mbean code=orgjbossjdbcHypersonicDatabase name=jbossjdbc:name=HypersonicDatabase/>
  這是根據JBOSS 的要求來加的在JBOSS的文檔裡有說這個
  
  完成了這兩步以後再按照用戶手冊上說的去做
  
  在INMEMORY連接方式下數據不會寫到硬盤上JBOSS一停數據庫中的數據就會消失所以每次啟動JBOSS前或後都要執行一次初始化數據庫的操作由於是IN MEMORY可以在JBOSS 啟動前初始化數據庫 但是要注意的一點是: 在JDBCPROPERTY ($DIST\wfmopenbin\lib\wfdemo)要使用的是database=jdbc:hsqldb:hsql:(要增加的)
    
  NOTE: 我用的是TCP我不能保證INMEMORY也可行
  
  PITFALL TWO
  
  為什麼不能用MYSQL 因為WFMOPEN 要求用支持DISTRIBUTE TRANSACTION的數據庫MYSQL顯然是不支持DISTRIBUTE TRANSACTION的 當然你可以在MYSQLCOM中找到MAXDB來用
  
  PITFALL THREE
  
  JBOSS 用哪個版本? 雖然用戶手冊上說的是JBOSS版本可以用但是周志軍發現JBOSS版上關於MQ SERVICE(JMS) 中有漏洞 WFMOPEN 明確用到JMS所以JBOSS版很可能引起WFMOPEN不能運行表現就是當用ML LOGIN的時候無法LOGIN 同時JBOSS上不斷拋出錯誤信息為了安全請使用JBOSS我用過了沒問題
  
  PTIFALL FOUR
  
  在把$DIST/lib/wfdemo/loginconfigxmlinsert添加到
  $JBOSS_HOME/server/default/conf/loginconfigxml 的時候要注意要在最後一個</policy>tag前添加那些內容手冊中寫的是在最後容易產生誤會如果LOGIN 的時候用ML無法LOGIN那麼錯誤可能在兩個地方:一是loginconfigxml文件沒設置好另一個就是數據庫沒有正確初始化應仔細在這兩個地方找錯誤
  
  HOW TO GET WFMOPEN SAMPLE UP
  
  I follow user manual C Sample application hours to get up wfmopen sample application you got problem using ML to login? Just follow these steps:
  
  WARNING: 
  First I use Jboss with wfmopen I cant login using ML meanwhile Jboss throw lots of exceptions continuely I found that Jboss itself has a bug when using MQ serviece(JMS) Wfmopen need MQ service support so this bug could cause the problem Otherwise unproperly set loginconfigxml file and uninitial database could also cause the problem as Michael said previously
  So Jboss dont work try Jboss
  
  Step : unzip Jboss
  
  Step : uncomment
  <connectionurl>jdbc:hsqldb:hsql://localhost:</connectionurl>in $JBOSS_HOME/server/default/deploy/hsqldbdsxml and comment all other <connectionurl>tags
  
  Step :add <mbean code=orgjbossjdbcHypersonicDatabase name=jbossjdbc:name=HypersonicDatabase/>to $JBOSS_HOME/server/default/conf/jbossservicexml
  
  Step : prepare the database as user manual said
  
  Step : make sure you insert the fragment $DIST/lib/wfdemo/loginconfigxmlinsert before the last </policy> tag of $JBOSS_HOME/server/default/conf/loginconfigxml( I got wrong when I simply append everything after $JBOSS_HOME/server/default/conf/loginconfigxml )
  
  Step : try wfmopen in case of wfmopen dont work
From:http://tw.wingwit.com/Article/program/Java/JSP/201311/19744.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.