當柳上原的風吹向天際的時候...

          真正的快樂來源于創造

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            368 Posts :: 1 Stories :: 201 Comments :: 0 Trackbacks

          #

          任務:熟悉Compute節點的使用及ESQL的基本寫法。
          注意:本節其它節點屬性和上一節一樣。

          1.Compute節點在Transformation菜單下:


          2.在MQInput節點和MQ Output節點之間插入一個Compute節點。由于沒有設置節點屬性,此時節點帶有錯誤圖標。


          3.右鍵點擊Compute節點,點擊“Open ESQL”菜單。


          4.在打開的窗口中輸入下面文字。

          第一句意思是從輸入內容賦值到輸出內容。
          第二句意思是在employee節點下增加cnname節點
          第三句意思是刪除原有employee節點下的name節點
          其它語句都是固定寫法。

          5.在InQ中輸入XML文本,待會看看進過Compute節點轉化后這段文本會變成什么樣子。


          6.查看OutQ中的輸出結果,確實達到了ESQL語句的目的。


          7.使用rfhutil.exe讀取OutQ中的內容。


          -The end-
          posted @ 2011-09-19 14:53 何楊 閱讀(1511) | 評論 (6)編輯 收藏

          目的:學習使用Input和Output節點并繼續熟悉WMB環境。

          1.右鍵點擊項目區,選擇新建“Message Flow Project”.


          2.右鍵點擊剛才創建的項目,在其下建立一個“Message Flow”。


          3.點擊剛才創建的flow.msgflow,拖曳出一個MQInput節點和MQOutput節點。


          4.點擊下圖紅框中的圖標,將兩個節點連接起來。


          5.如下圖所示,注意箭頭的起點位置。下圖圖標顯示了錯誤和警告,這表示應該設置它們的屬性,使其能和Queue對應起來。


          6.打開Websphere MQ Explorer,在Queue manager "MB7QMGR"下建立兩個消息隊列,取名為InQ和OutQ。


          7.右鍵點擊MQ Input節點,點擊屬性,在下面的Q name處寫入InQ。


          8.郵件點擊MQ Output節點,在屬性中指定Queue manager name和Queue Name。


          9.在項目下創建一個Message Broker Archive.這個用來將項目打包發布。


          10.點擊剛才創建的bar.bar,在右邊點擊按鈕“Build Broker Archive”。


          11.在IBM Websphere MQ Explorer中,右鍵點擊InQ,選擇“Put Test meesage”菜單。斷點狀態顯示信息已經從MQ Input節點發送了出來。


          12.將斷點跑完,再在MQ Explorer中右鍵點擊OutQ,選擇“browse message”菜單,在彈出的窗口中可以看到,信息已經發送到了OutQ中。


          -The End-
          posted @ 2011-09-19 13:09 何楊 閱讀(1369) | 評論 (3)編輯 收藏

          本節任務:
               熟悉進行WMB開發需要用到的軟件及環境.
           
          1.WebSphere MQ及其操作工具WebSphere MQ Explorer:
                 MB 的運行依賴于 MQ,所以首先要安裝 MQ,MQ是就是 IBM 的消息中間件產品,IBM 幾乎所有 SOA 相關的產品,都是構建于 MQ 之上的,沒有 MQ 強大的消息傳輸能力,那么 IBM 很多產品都做不起來。你可以把MQ當成一個傳輸通道,只要往里面放東西,MQ 就會把消息傳到目的地。      
                 WebSphere MQ Explorer是用來操作MQ的工具,我們需要利用它來建立隊列管理器及隊列.下圖就是WebSphere MQ Explorer的操作界面:
                

          2.IBM WebSphere Message Broker Explorer:    
                IBM WebSphere Message Broker(以下稱為 Message Broker)可以作為企業服務總線使用,提供用于各種協議的通用連接以及為使用結構化和非結構化數據的應用程序提供數據轉換功能。WebSphere Message Broker(代理)的兩個核心功能就是:“消息路由”和“消息格式轉換”。它相當于一個公共服務中心。MB 接收所有消息,然后自動分析其中的內容,找到相應的目的地,進行路由轉發;此外,MB 還可以進行消息轉換,這就像是自動翻譯信件. MB本質上也是一個服務總線,所有的服務組件接入到MB中,服務將消息塞給MB,MB來決定怎么轉發,這樣讓服務愈加成為一個獨立的實體,和其他服務的耦合性進一步降低,從而達到 SOA 的境界。(題外話:我個人覺得,SOA把業務分離出來的想法是好的,奈何當前所有模擬業務流程的工作流從根基上來說就是背離現實的,這就是SOA賴以生存的基礎.因此SOA做得再好也只是修補性工作).
                 下圖是WMB的整體架構圖:
                    

          3.WebSphere Message Broker Toolkit 7.0:
                 這是操作WebSphere Message Broker的開發環境,它是基于Eclipse做成的,因此上手很快.我們大部分的工作都要依賴它來完成.
                
                 以下是WebSphere Message Broker Toolkit的界面介紹:
                       
                1 號區域是一個消息流,可以看到非常直觀:從 MQ 讀入—  —  計算(轉換成 web service 格式)—  —發送 http 請求到 web service 的 url—  —  計算(轉換回 MQ 消息格式)—  —  放入 MQ。
                2 號區域是節點選擇面板,MB 自帶了幾十種節點給我們選擇,同時我們也可以自己創建節點。
                3 號區域是屬性面板,當你選擇某個節點時,可以在其中編輯節點的屬性。
                4 號區域是域連接面板,開發好的消息流和消息格式,必須首先在 MBT 中連接到對應的配置管理器,再將打包好的流程部署到對應的 broker 中,這個過程也可以由命令行完成。
                5 號區域則類似 eclipse 的項目集合,里面是所有的 MB 項目。

          4.rfhutil.exe:

                 這個工具用來往隊列上發送消息以及讀取消息,它是可選的,沒有它我們也可以依靠WebSphere MQ Explorer來完成同樣的工作.
                

          本節結束。
          posted @ 2011-09-18 16:31 何楊 閱讀(3954) | 評論 (0)編輯 收藏

          當網頁提交時,如果提交內容較多時或者服務器響應較慢時容易有一段延遲,此事若是采用等待頁面可加強用戶使用感覺,具體實現如下:

          網頁內容:
          <%@ page contentType="text/html; charset=UTF-8"%>
          <%@ taglib uri="/WEB-INF/tld/struts-html.tld" prefix="html"%>
          <%@ taglib uri="/WEB-INF/tld/struts-logic.tld" prefix="logic"%>
          <%@ taglib uri="/WEB-INF/tld/struts-bean.tld" prefix="bean"%>
          <%@ taglib uri="/WEB-INF/tld/struts-tiles.tld" prefix="tiles"%>

          <style type="text/css">
              <!--
              
              
          /*彈出層的STYLE*/
              .popupLoadingDiv 
          {
                  border
          : 1px solid #336699;
                  background
          :#ffffff url(web/img/content_top_bg.gif) repeat-x 0px -20px;
                  padding
          :5px;
                  text-align
          : center;
                  line-height
          : 40px;
                  font-size
          : 12px;
                  font-weight
          : bold;
                  z-index
          :99;
                  width
          : 300px;
                  height
          : 120px;
                  left
          :50%;/*FF IE7*/
                  top
          : 50%;/*FF IE7*/
                  
                  margin-left
          :-150px!important;/*FF IE7 該值為本身寬的一半 */
                  margin-top
          :-60px!important;/*FF IE7 該值為本身高的一半*/
                  
                  margin-top
          :0px;
                  
                  position
          :fixed!important;/*FF IE7*/
                  position
          :absolute;/*IE6*/
                  
                  _top
          :       expression(eval(document.compatMode &&
                              document.compatMode=='CSS1Compat') ?
                              documentElement.scrollTop + (document.documentElement.clientHeight-this.offsetHeight)/2 :
          /*IE6*/
                              document.body.scrollTop + (document.body.clientHeight - this.clientHeight)/2)
          ;/*IE5 IE5.5*/
              
              
          }
              
              .grayBackground 
          {
                  background-color
          : #ccc;
                  width
          : 150%;
                  height
          : 100%;
                  left
          :0;
                  top
          :0;/*FF IE7*/
                  
                  filter
          :alpha(opacity=50);/*IE*/
                  opacity
          :0.5;/*FF*/
                  z-index
          :1;
                  
                  position
          :fixed!important;/*FF IE7*/
                  position
          :absolute;/*IE6*/
                  
                  _top
          :       expression(eval(document.compatMode &&
                              document.compatMode=='CSS1Compat') ?
                              documentElement.scrollTop + (document.documentElement.clientHeight-this.offsetHeight)/2 :
          /*IE6*/
                              document.body.scrollTop + (document.body.clientHeight - this.clientHeight)/2)
          ;/*IE5 IE5.5*/
              
              
          }
              
              #loadingDivTitleDiv
          {
                  font-size
          :14px;  
                  font-weight
          :bold;       
                  color
          :#000000;
                  text-align
          :center;
                  border-bottom
          :1px dashed #336699;
              
          }
              #loadingDivImgDiv
          {
                  padding-top
          :5px;
                  padding-bottom
          :5px;
              
          }
              #loadingDivInstructionDiv
          {
                  font-size
          :12px;  
                  font-weight
          :normal;       
                  color
          :#000000;
                  text-align
          :center;
              
          }
          /*The END*/
              -->
          </style>

          <div id="loadingDiv" class="popupLoadingDiv" style="display:none">
              
          <div id="loadingDivTitleDiv">提交中</div>
              
          <div id="loadingDivImgDiv">
                  
          <img id="loadingImg" src="web/page/common/loading/loading.gif" border="0"/>
              
          </div>
              
          <div id="loadingDivInstructionDiv">正在提交,請稍候</div>
          </div>
          <div id="grayBackgroundDiv" class="grayBackground" style="display:none;">
              
          <!-- 用來保持在選擇框上的IFrame -->
              
          <iframe id="innerFrame" style="position:absolute;z-index:-1;width:100%;height:100%;top:0;left:0;scrolling:no;" frameborder="0" src="about:blank">
              
          </iframe>
          </div>

          <script language="javascript">
          <!--

          /*****************************************************
          * 顯示載入中div
          * 何楊 2011年7月25日11:43:54
          ****************************************************
          */
          function showLoadingWnd(){
              document.getElementById(
          "loadingDiv").style.display="block";
              document.getElementById(
          "grayBackgroundDiv").style.display="block";
              
              window.setTimeout('replayImg()', 
          3000);
          }

          /*****************************************************
          * 重新加載圖片
          * 何楊 2011-7-25 11:43:34
          ****************************************************
          */
          function replayImg(){ 
             
          var loadingImg = document.getElementById("loadingImg");
             loadingImg.src
          =loadingImg.src;
          }
          //-->
          </script>

          在頁面上如下載入上述頁面:
          <jsp:include page="/web/page/common/loading/loading.jsp" flush="true" />

          需要彈出此窗口時使用如下JS函數:
          showLoadingWnd()

          代碼從這里下載:
          http://www.aygfsteel.com/Files/heyang/loading2011-09-09.rar

          實現效果如圖:
          posted @ 2011-09-09 12:38 何楊 閱讀(954) | 評論 (1)編輯 收藏

          select sysdate+1  from dual -- 明天
          select sysdate+1/24  from dual -- 1個小時后
          select sysdate+1/(24*60)   from dual --1分鐘后
          select sysdate+1/(24*60*60)  from dual -- 一秒后
          posted @ 2011-08-05 14:20 何楊 閱讀(1594) | 評論 (0)編輯 收藏

          parseInt函數常用來將字符串轉化成數字,需要注意的是,如果參數的第一位是‘0’,如果不指定進制,它會默認按八進制轉化,這就不是我們想要的結果了。
          因此,為安全期間,最好在使用此函數時加上十進制,如下
          var n=parseInt('08',10);

          posted @ 2011-08-04 12:31 何楊 閱讀(212) | 評論 (0)編輯 收藏

          在ie6中,如果給Table表格的表投行TH設定背景圖片,將導致IE6出現無響應的Bug,實例代碼如下:
          Table.stock th{
              font-size
          :13px;
              font-weight
          :normal;
              background-color
          :#f2f9ff;
              
              color
          :#333333;
              height
          :20px;
              line-height
          :20px;
              text-align
          :center;
              
              border-left
          :1px solid #d0d0d0;
              border-right
          :1px solid #d0d0d0;
              border-bottom
          :1px solid #d0d0d0;
              
              
          /*background-image:url(titBg.gif); it will make IE6 no response.*/
              
          /*background:#f2f9ff url(thbg.png) repeat-x;    it will also make IE6 no response.*/
          }   

          如果在IE8中則沒有這樣的問題,如果被迫適應IE6,只有取消上面粗體部分。
          posted @ 2011-07-08 11:10 何楊 閱讀(491) | 評論 (0)編輯 收藏

          1.到Axis2網站下載Axis2的最新版本。
          2.將下載包解壓到本地。
          3.設置環境變量AXIS2_HOME,其值為下載包的解壓目錄。
          4.打開CMD,進入AXIS2_HOME指定目錄下的bin目錄。
          5.使用命令wsdl2java -uri http://localhost:8088/AHCMS2_Service531/services/service?wsdl  -p client -s -o stub來生成Java代碼。
          執行完畢后,你會發現bin目錄會多了一個stub文件夾,Java代碼就在其中。

          posted @ 2011-06-22 17:09 何楊 閱讀(3043) | 評論 (0)編輯 收藏

          BarCode4j確實簡單易用,Sample稍微改寫一下就可以達到目的了。
          BarCode4j網址:http://sourceforge.net/projects/barcode4j/

          二維碼圖片示例:


          代碼下載(注:代碼是Sample的源碼,基本沒有改寫,)
          http://www.aygfsteel.com/Files/heyang/BarCodeTest.rar
          posted @ 2011-06-15 17:13 何楊 閱讀(2796) | 評論 (1)編輯 收藏

               摘要: 代碼如下:1.Application類Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->package com.ibm.ahcms2.tool.jacob.word;import com.jacob.activeX.ActiveXCo...  閱讀全文
          posted @ 2011-06-04 20:12 何楊 閱讀(4797) | 評論 (1)編輯 收藏

          僅列出標題
          共28頁: First 上一頁 8 9 10 11 12 13 14 15 16 下一頁 Last 
          主站蜘蛛池模板: 开封市| 兴宁市| 信宜市| 浮山县| 铜陵市| 杭锦旗| 札达县| 道孚县| 项城市| 彰化县| 昌吉市| 盖州市| 临湘市| 嘉黎县| 昌江| 米泉市| 英吉沙县| 湘潭市| 涪陵区| 兴城市| 宿州市| 郯城县| 定陶县| 壶关县| 平和县| 重庆市| 六枝特区| 临高县| 寿宁县| 科技| 昂仁县| 南郑县| 通许县| 托克托县| 萨迦县| 东方市| 桃园市| 江陵县| 康马县| 绥化市| 阿图什市|