blog.Toby

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            130 隨筆 :: 2 文章 :: 150 評(píng)論 :: 0 Trackbacks
          的SQL server 我這里用SS代替,Sql Server Analysis Service 我用SSAS代替,

          這是OPENI文檔中也這么稱(chēng)呼,希望大家習(xí)慣。

          介紹我的環(huán)境:

          windows xp pro + sp2
          SS 2000 開(kāi)發(fā)版(中文) + sp3a
          SSAS 2000 +sp3a
          XML analysis SDK 6.0
          XMLA SDK 1.1
          sorry我的迅雷歷史察看有問(wèn)題,列不出地址了。大家自己找吧。

          安裝方法可以參看openi首頁(yè)的安裝文檔,上面詳細(xì)介紹了如何安裝

          注意,這里SSAS 2000 和SS用的是sp3a的補(bǔ)丁,openi官方稱(chēng)jpivot

          不支持SSAS 2000+sp4 或SS 2005,需要修改文件。修改方法看openi

          的wiki,(我沒(méi)試過(guò))。

          為什么,要用SSAS 2000呢?因?yàn)镾SAS 2005明確說(shuō),要使用XMLA

          SOAP必須要windows 2003,配IIS 6.0,我的機(jī)器是xp,也不想裝2003所以

          必須選SSAS2000,關(guān)于IIS6.0我起先想裝到xp上,下了n多的所謂的6.0 for XP

          全是假的,還中了n個(gè)木馬。記住IIS6.0只有在2003上,xp上是沒(méi)有的,

          openi中文檔里說(shuō)的applaction pool在2003中才有,同樣web services也必須

          2003上配。SSAS 2000為什么選sp3a這是openi說(shuō)的,俺就不試sp4了,省的有問(wèn)題

          先安裝以上我列舉的軟件。

          然后在IIS,管理面板中選擇,默認(rèn)站點(diǎn),新建虛擬目錄,目錄名為xmla指向

          C:\Program Files\Microsoft XML For Analysis SDK\isapi
          設(shè)置可匿名訪問(wèn)該虛擬目錄,并在屬性中設(shè)置,執(zhí)行權(quán)限是腳本和可執(zhí)行文件。

          設(shè)完后在瀏覽器中輸入:
          http://localhost/xmla/msxisapi.dll
          應(yīng)該看到如下顯示:
          <?xml version="1.0" ?>
          - <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
          - <SOAP-ENV:Body>
          - <SOAP-ENV:Fault xmlns:XA="urn:schemas-microsoft-com:xml-analysis">
          <faultcode>XA:XMLAnalysisError.88BA0800</faultcode>
          <faultstring>Web 服務(wù)只支持 POST 操作。</faultstring>
          <faultactor>urn:schemas-microsoft-com:xml-analysis</faultactor>
          - <detail>
          <Error ErrorCode="2293893120" Description="Web 服務(wù)只支持 POST 操作。" Source="urn:schemas-microsoft-com:xml-analysis" />
          </detail>
          </SOAP-ENV:Fault>
          </SOAP-ENV:Body>
          </SOAP-ENV:Envelope>
          意思是說(shuō),xmla不支持get,必須post操作

          到這里,任務(wù)完成了多半
          在你的配置里,修改xmla的配置讓他指向,這里就ok了
          例如morndian 中修改WEB-INF/question/xmla.jsp中
          <jp:xmlaQuery id="query01"
          uri="http://localhost/xmla/msxisapi.dll"
          catalog="FoodMart 2000">
          注意catalog是FoodMart 2000

          然后到界面中,預(yù)覽就OK了。
          這里有幾個(gè)問(wèn)題,玩了我3天,我先列舉一些
          SQL server 2005 soap必須在2003上配
          IIS 6.0不能裝在XP上
          SQL server 的sp補(bǔ)丁必須跟服務(wù)器語(yǔ)言版本一致,openi的是E文的不能用
          不要用xmlaTest.jsp測(cè)試(我測(cè)試xmla都用這個(gè),結(jié)果就是這個(gè)玩了我兩天)
          xmlaTest.jsp發(fā)送的報(bào)文是Form的一個(gè)簡(jiǎn)單Post,如果直接把URL,換為msxisapi.dll
          就會(huì)報(bào)
          <faultcode>XA:XMLAnalysisError.8007000E</faultcode>

          <faultstring>處理請(qǐng)求時(shí)出錯(cuò)。</faultstring>
          Goole半天終于知道要在http請(qǐng)求頭中加入:
          SOAPAction: "urn:schemas-microsoft-com:Discover"
          對(duì)這句話解釋是:XML/A servers didn't require it, but by the "letter of the law" it should be in there.
          form post的時(shí)候當(dāng)然沒(méi)這個(gè)東東了。
          而jpivot中發(fā)送的時(shí)候帶,看報(bào)文:
          POST /xmla/msxisapi.dll HTTP/1.1^M
          SOAPAction: "urn:schemas-microsoft-com:xml-analysis:Discover"^M
          Content-Type: text/xml; charset="utf-8"^M
          Content-Length: 429^M
          Cache-Control: no-cache^M
          Pragma: no-cache^M
          User-Agent: Java/1.5.0.03^M
          Host: 192.168.0.203:9444^M
          Accept: text/html, image/gif, image/jpeg, *; q=.2, */*; q=.2^M
          Connection: keep-alive^M
          注意到了沒(méi),有個(gè)SOAPAction,而testXMLA.jsp是Form提交當(dāng)然沒(méi)有,
          看報(bào)文頭如下:
          POST /xmla/msxisapi.dll HTTP/1.1^M
          User-Agent: Opera/9.01 (Windows NT 5.1; U; zh-cn)^M
          Host: 192.168.0.203:9444^M
          Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1^M
          Accept-Language: zh-CN,zh;q=0.9,en;q=0.8^M
          Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1^M
          Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0^M
          Referer: http://192.168.0.203:8444/mon/xmlaTest.jsp^M
          Connection: Keep-Alive^M
          Content-Length: 1134^M
          Content-Type: application/x-www-form-urlencoded
          所以MS的SSAS,XMLA要報(bào)那個(gè)該死的錯(cuò)誤。你要不明白原理,調(diào)死你也不通。
          為了這個(gè)試了N種組合,包括XMLA SDK版本降級(jí)。。。

          http://www.bbker.com/D7478.html

          posted on 2008-08-13 10:19 渠上月 閱讀(699) 評(píng)論(0)  編輯  收藏 所屬分類(lèi): OLAP
          主站蜘蛛池模板: 雷波县| 巢湖市| 元谋县| 通城县| 根河市| 任丘市| 广灵县| 银川市| 香港| 长沙县| 从化市| 光泽县| 沙田区| 渝北区| 磴口县| 确山县| 无极县| 临清市| 和硕县| 会昌县| 宁乡县| 永胜县| 金昌市| 汉沽区| 射阳县| 扬中市| 洮南市| 正镶白旗| 缙云县| 封丘县| 呼和浩特市| 临颍县| 文成县| 岱山县| 丰县| 视频| 麻栗坡县| 鹤山市| 兰考县| 平乡县| 洪江市|