更新時間:2021-10-19 11:19:37 來源:動力節點 瀏覽1044次
Java代碼生成器是Java開發工具中的一種,使用 Stylus Studio® X16 XML Enterprise Suite 中的新 Java 代碼生成器讓您的 XSLT 和 XQuery To-Go。
因此,您已經使用 Stylus Studio® 編寫和調試 XSLT或XQuery,并且它在 Stylus Studio® 中運行得非常迷人。但是現在您的老板希望您將XQuery和XSLT 樣式表帶到您的生產環境中。好吧,如果您的平臺是 Java(JRE 1.4 或更高版本),Stylus Studio® X16 XML Enterprise Suite可以使用Stylus Studio®自動生成將 XSLT 或 XQuery 部署為 Java 應用程序或 Java 應用程序中的類所需的 Java 代碼Java 代碼生成器。在本教程中,我們將向您展示如何操作。
要繼續進行,請確保您的計算機上安裝了JRE 1.4或更高版本以及 Stylus Studio® X16 XML Enterprise Suite。
Stylus Studio® 使編寫和調試 XSLT 和 XQuery 程序變得容易;您可以使用 Stylus Studio® XML IDE編寫、測試、調試和運行它們。對于許多用例,這就是您需要做的所有事情 — 當您需要運行 XSLT 時,您只需啟動 Stylus Studio® 并運行文件即可。其他用例需要更自動化的東西。例如,假設 XSLT 或 XQuery 是客戶端/服務器應用程序的一部分,或者需要作為定期批處理作業的一部分運行。在這種情況下,您需要使用新的 Stylus Studio® Java 代碼生成器來構建運行 XSLT 或 XQuery 的 Java 應用程序。Stylus Studio® Java 代碼生成器將創建一個.java您可以運行的文件:
作為 cmd.exe 窗口中的控制臺應用程序(.java 文件包含一個main()方法)
作為更大的 Java 應用程序或小程序的一部分
為了協助從 XML 到 Java 的轉換,Stylus Studio® 創建 .java 文件,在內置Java IDE(支持 Java 編輯、編譯、調試等)中打開它們,最后幫助您設置為您選擇的選項量身定制的類路徑。
創建獨立的 Java 應用程序來運行 XSLT
我們將在本文中的示例中使用 XSLT — 但您也可以利用 XQuery 文件來利用 Stylus Studio® 的所有 Java 代碼生成功能。我們將首先打開隨 Stylus Studio® 示例項目提供的示例之一:
從 Stylus Studio® 中選擇項目 > 新建項目以創建新項目。
使用文件資源管理器打開sampleBooksToCatalog.xsl位于\examples\simpleMappingsStylus Studio® 安裝目錄中的文件。
要在 Stylus Studio® 中創建 XSLT 或 XQuery,您需要創建一個場景。場景允許您定義與 XSLT 或 XQuery 關聯的設置和選項,例如您要轉換或查詢的源文件,是否要對結果執行任何后處理等。讓我們檢查 XSLT 的場景屬性,以確保 sampleBooksToCatalog.xsl 配置為使用 Java XSLT 處理器(而不是 MSXML)。您可以通過單擊場景名稱旁邊的瀏覽 [...] 按鈕來訪問 XSLT 場景屬性。
Stylus Studio® XML Java 代碼生成器可與多種流行的 Java XSLT 處理器配合使用,包括 Saxon XSLT 處理器。(對于 XQuery,您可以使用Saxon XQuery 處理器和 DataDirect XQuery 處理器。)選擇您在應用程序中使用的處理器,然后單擊確定以保存更改。現在,您已準備好生成一些 Java 代碼。
從 Stylus Studio® 菜單中選擇 XSLT > Generate Java Code... 以打開代碼生成對話框。Stylus Studio® 的 Java 代碼生成器提供了多種代碼生成選項,讓您可以自定義為您生成的代碼。第一次生成 Java 代碼時,您需要填寫目標目錄字段以指定輸出 .java 文件的位置。您可以選擇指定包名稱字段。默認情況下,Stylus Studio® 使用生成的類名的文件名,但您可以根據需要更改類名字段的值。其他選項可讓您指定是否要公開生成的類,是否要生成 .java 文件以包含main(String[ ] args)方法,以及是否要將生成的代碼添加到當前活動的項目中。默認情況下,所有這些選項都處于啟用狀態,我們將保留它們的設置,如下所示:
一旦生成的.java文件(.ZIP,4KB)完成,手寫筆工作室自動打開它在內置的Java編輯器。從那里您可以通過從菜單中選擇 Java > Run 來輕松運行 Java 代碼,或者您可以使用 Stylus Studio® Java 調試器逐步完成。我們將很快運行 Java 代碼,但讓我們首先通過從 Stylus Studio® 菜單中選擇 Project > Set classpath 來查看新 Java 文件所需的類路徑。
該java.lang.ClassNotFoundException例外是Java編程的克星,尤其是在Java的XML發展,因為每一個XSLT處理器都有自己的jar文件。如果您的應用程序使用驗證(比如使用 Xerces)或 XSL-FO 后處理(比如使用 Apache FOP),問題會變得更糟——越來越多的 jar,每個都有自己的類路徑問題。但是 Stylus Studio® 的 Java 代碼生成器幾乎可以在銀盤上為您提供所需的類路徑。或 Windows 對話框。一樣。
創建 XSLT 或 XQuery 并為其生成Java代碼后,您可以使用“項目類路徑”對話框(再次從 Stylus Studio® 菜單中選擇“項目”>“設置類路徑”)查看 Stylus Studio® 放入的 jar 文件類路徑。當您將 .java 文件作為獨立應用程序運行時,只需在類路徑中復制/粘貼相同的 jar 文件,應用程序就會完美運行。
Scenario Properties 對話框允許您指定用于運行 XSLT 或 XQuery 的選項,包括以下內容,所有這些都反映在生成的 Java 代碼中。您可以使用場景屬性來指定:
當您的 Java 程序運行時要使用哪個 XSLT 或 XQuery 處理器。早些時候,您看到 XSLT 有三個選擇:Saxon 9.1.0.5、Saxon 6.5.3。(對于 XQuery,您可以使用 Saxon 9.1.0.5 或 DDXQ。)無論您選擇什么,Java 代碼生成器都會為您在項目類路徑中放置正確的 jar 文件。
輸入和輸出 URL。XSLT 只需要輸入 URL。您可以輸入Java類的URL,其中包括所支持的任何URL file:///..., http:///...等等。
全局 XSLT 或 XQuery 參數
輸出驗證。處理器運行后,您的 Java 程序可以調用XercesJ 2.5.1 驗證引擎來根據目標 XML 模式驗證 XSLT 或 XQuery 的輸出。要使用此功能,只需選中驗證樣式表結果復選框。如果要針對外部模式進行驗證,還應選中使用內置驗證器復選框并在關聯列表框中輸入必要的模式。
XSL-FO后處理。在 Post-process 選項卡中,選擇 Post process with Apache FOP選項。Stylus Studio® 將處理其余的工作。當您從生成的代碼運行 Java 程序時,您的應用程序將在您在 Java 代碼生成對話框中指定的目標目錄中創建一個 PDF 文件。
Java 代碼生成器的主要亮點之一是其獨特的能力,可以生成無縫訪問各種不同數據源所需的代碼。如果您在場景屬性對話框處理器選項卡上選中了使用 Stylus URI 解析器(默認選中),您可以生成直接訪問任何 Stylus Studio® 文件系統所需的 Java 代碼,包括:
ws:///...(網絡服務)
adapter:///...(轉換為 XML適配器或任何自定義XML 適配器)
tig:///...(Raing Data 的TigerLogic XDMS)
您編寫的任何其他自定義文件系統
XSLT 或 XQuery 處理器在需要打開外部文件時需要知道如何解析 URL,包括:
默認輸入和輸出文件(或 Stylus Studio® 數據源)
.xsl 或 .xquery 文件本身
使用該doc(...)函數在 XSLT 或 XQuery 內部引用的任何文件
使用或在應用程序讀取的任何文件中調用的文件
由應用程序讀取的任何文件引用的任何架構文件
處理器知道如何解析標準 URL,如file:///...、 或http:///...。但是,由于 Stylus Studio® URI 解析器,Stylus Studio® 提供了一組豐富的 URL 協議,用于無縫訪問其他數據源,如關系、 EDI或其他傳統數據格式作為 XML。把它想象成一個適配器層 將遺留數據動態轉換為 XML 格式的代碼,使您能夠在 XSLT 或 XQuery 應用程序中使用幾乎任何數據源。您可以在“場景屬性”對話框的“處理器”選項卡上指定 Java 程序是否應支持 Stylus Studio® URL 協議。如果您選中 Use Stylus URI Resolver 復選框(默認情況下處于啟用狀態),Stylus Studio® 會將必要的代碼添加到您的 Java 程序中。這包括將必要的 jar 文件添加到類路徑,并插入對StylusFileFactory.unlockAPI方法的調用。
Stylus Studio® Scenario Properties 對話框允許您為同一個 XSLT 或 XQuery 程序創建多個場景。此功能與 Java 代碼生成器完全集成,使您可以輕松地同時為您選擇的任何場景創建 Java 代碼。如果您定義了多個 XSLT 多個場景(例如,每個場景都使用不同的處理器或 XML 模式進行驗證),則每個場景都列在 Java 代碼生成對話框中;只需選中您希望包含在 Java 程序中的場景的復選框即可。
Stylus Studio® 生成的 Java 代碼包括setScenario您選擇的每個場景的方法。在 Stylus Studio® 中運行 Java 代碼時,您可以單獨取消對場景的注釋,或者,在部署應用程序時,您可以簡單地編寫代碼來setScenario根據需要為各個場景設置方法。
如前所述,您可以選擇讓 Stylus Studio®main(String[ ] args)在為 XSLT 或 XQuery 生成的 Java 代碼中包含該方法。當然,如果您計劃獨立運行該程序,您將需要這個。它還為您提供了一個很好的示例,說明如何在更大的應用程序中使用該類——您的應用程序所需要做的就是實例化對象,然后按照方法調用它們的相同順序調用所有main()方法。
簡而言之,Stylus Studio® Java 代碼生成器
Stylus Studio® X16 XML Enterprise Suite 提供強大的 XML 工具,通過生成在 Java 應用程序中執行 XSLT 和 XQuery 所需的代碼來開發、測試、調試和部署 XML 應用程序!立即下載Stylus Studio® Java 代碼生成器,節省數小時不必要的打字和調試時間!
如果您想了解更多相關知識,不妨來關注一下動力節點的Java在線學習,里面有更多相關知識在等著大家,很適合零基礎小白哦,相信對大家的學習會有所幫助。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習