星期五, 9月 27, 2013

Spring.NET Extensible XML authoring

基本上照著官方文件附錄 C 做,沒什麼太大問題,看人家的文件多好!有些地方我想補充一下:
  1. XSD 很希望只有一份,但目前要有兩份一模一樣的,這個比較遺憾。一份放在組件內且必須設為「Embedded Resource」,另一份放在網站上公佈。
  2. 依據 XSD 在組件專案的位置決定 MyNamespaceParser 的 SchemaLocation 值,以我的例子,專案預設命名空間是 com.abc,目錄為 spring/webflow/config,檔名為 spring-webflow-config-1.0.xsd,所以我的 SchemaLocation = "/com.abc.spring.webflow.config/spring-webflow-config-1.0.xsd"。
  3. 我自訂的 xml namespace 叫 webflow,所以在 Spring 的設定像是
    • <objects xmlns="http://www.springframework.net"
    •          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    •          xmlns:webflow="http://www.springframework.net/schema/webflow-config"
    •          xsi:schemaLocation="
    •          http://www.springframework.net
    •          http://www.springframework.net/schema/objects/spring-objects-1.1.xsd
    •          http://www.springframework.net/schema/webflow-config
    •          http://10.0.2.2/spring-webflow-config-1.0.xsd
    •          ">
  4. 前述設定倒數第二行就是所謂「放在網站上公佈」的複本位置,如果不放,在 Visual Studio 開發環境看來會有些不足,但不至於影響正常執行。另外,由於實際上發現在 IIS 的網站上可能會有 Mime-type 設定等等問題,最後我用的是 Apache httpd。
  5. 前述設定第三行要與 MyNamespaceParser 的 Namespace 值匹配。

沒有留言:

張貼留言