Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migrated to Confluence 5.3

...

Code Block
languagehtml/xml
titleconfig.xml
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://msghandler.suis.admin.ch/xmlns/config config.xsd"
        xmlns="http://msghandler.suis.admin.ch/xmlns/config"
        version="3.01">
    <sedexAdapter>
        <participantId>T7-4-1</participantId>
        <inboxDir>/mh_examples/case1/sedex/inbox</inboxDir>
        <outboxDir>/mh_examples/case1/sedex/outbox</outboxDir>
        <receiptDir>/mh_examples/case1/sedex/receipts</receiptDir>
        <sentDir>/mh_examples/case1/sedex/sent</sentDir>
    </sedexAdapter>
    <messageHandler>
        <!-- In diesem Pfad mssen die MH Basis-Verzeichnisse sein: 
        corrupted, tmp, unkown, etc. -->
        <workingDir dirPath="/mh_examples/case1/mh/working-dir"/>
        <!-- Wo starten relative Pfade -->
        <baseDir dirPath="/mh_examples/case1/application"/>
        <!--  wie oft wird die sedex inbox geprft -->
        <sedexInboxDirCheck cron="0/5 * * * * ?" />
        <!--  wie oft wird das sedex receipts directoty geprft -->
        <sedexReceiptDirCheck cron="0/5 * * * * ?" />
        <!-- jede *outbox kann Wert berschreiben -->
        <defaultOutboxCheck cron="0/5 * * * * ?" />
        <webserviceInterface host="localhost" port="18080"/>
        <statusDatabase dirPath="/mh_examples/case1/mh/working-dir/db" 
        dataHoldTimeInDays="2" resend="true"/>
        <protocol createPerMessageProtocols="false"/>
    </messageHandler>
    <nativeApp participantId="T7-4-1" > <!-- die lokale sedexId -->
        <outbox dirPath="outbox" msgType="10301"> 
            <recipientIdResolver filePath="/mh_examples/case1/mh/install-dir/conf/recipientIdResolver.groovy" method="resolve" />
        </outbox>
        <inbox dirPath="inbox" msgTypes="10301"/>
    </nativeApp>
</config>

...

Code Block
languagehtml/xml
titleconfig.xml
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://msghandler.suis.admin.ch/xmlns/config config.xsd"
        xmlns="http://msghandler.suis.admin.ch/xmlns/config"
        version="3.01">
    <sedexAdapter>
        <participantId>T7-4-1</participantId>
        <inboxDir>/mh_examples/case2/sedex/inbox</inboxDir>
        <outboxDir>/mh_examples/case2/sedex/outbox</outboxDir>
        <receiptDir>/mh_examples/case2/sedex/receipts</receiptDir>
        <sentDir>/mh_examples/case2/sedex/sent</sentDir>
    </sedexAdapter>
    <messageHandler>
        <!-- In diesem Pfad mssen die MH Basis-Verzeichnisse sein: 
        corrupted, tmp, unkown, etc. -->
        <workingDir dirPath="/mh_examples/case2/mh/working-dir"/>
        <!-- Wo starten relative Pfade -->
        <baseDir dirPath="/mh_examples/case2"/>
        <!--  wie oft wird die sedex inbox geprft -->
        <sedexInboxDirCheck cron="0/30 * * * * ?" />
        <!--  wie oft wird das sedex receipts directoty geprft -->
        <sedexReceiptDirCheck cron="0/30 * * * * ?" />
        <!-- jede *outbox kann Wert berschreiben -->
        <defaultOutboxCheck cron="0/30 * * * * ?" />
        <webserviceInterface host="localhost" port="18080"/>
        <statusDatabase dirPath="/mh_examples/case2/mh/working-dir/db" 
        dataHoldTimeInDays="2" resend="true"/>
        <protocol createPerMessageProtocols="false"/>
    </messageHandler>
    <nativeApp participantId="T7-4-2" > <!-- die lokale sedexId -->
        <outbox dirPath="applicationA/outbox" msgType="10301"> 
            <recipientIdResolver filePath="/mh_examples/case2/mh/install-dir/conf/recipientIdResolver.groovy" method="resolve" />
        </outbox>
        <inbox dirPath="applicationA/inbox" msgTypes="10301"/>
    </nativeApp>
    <nativeApp participantId="T7-4-3" > <!-- die lokale sedexId -->
        <outbox dirPath="applicationB/outbox" msgType="10301"> 
            <recipientIdResolver filePath="/mh_examples/case2/mh/install-dir/conf/recipientIdResolver.groovy" method="resolve" />
        </outbox>
        <inbox dirPath="applicationB/inbox" msgTypes="10301"/>
    </nativeApp>
</config>

...

Code Block
languagehtml/xml
titleconfig.xml
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://msghandler.suis.admin.ch/xmlns/config config.xsd"
        xmlns="http://msghandler.suis.admin.ch/xmlns/config"
        version="3.01">
    <sedexAdapter>
        <participantId>T7-4-1</participantId>
        <inboxDir>/mh_examples/case3/sedex/inbox</inboxDir>
        <outboxDir>/mh_examples/case3/sedex/outbox</outboxDir>
        <receiptDir>/mh_examples/case3/sedex/receipts</receiptDir>
        <sentDir>/mh_examples/case3/sedex/sent</sentDir>
    </sedexAdapter>
    <messageHandler>
        <!-- In diesem Pfad mssen die MH Basis-Verzeichnisse sein: 
        corrupted, tmp, unkown, etc. -->
        <workingDir dirPath="/mh_examples/case3/mh/working-dir"/>
        <!-- Wo starten relative Pfade -->
        <baseDir dirPath="/mh_examples/case3"/>
        <!--  wie oft wird die sedex inbox geprft -->
        <sedexInboxDirCheck cron="0/30 * * * * ?" />
        <!--  wie oft wird das sedex receipts directoty geprft -->
        <sedexReceiptDirCheck cron="0/30 * * * * ?" />
        <!-- jede *outbox kann Wert berschreiben -->
        <defaultOutboxCheck cron="0/30 * * * * ?" />
        <webserviceInterface host="localhost" port="18080"/>
        <statusDatabase dirPath="/mh_examples/case3/mh/working-dir/db" 
        dataHoldTimeInDays="2" resend="true"/>
        <protocol createPerMessageProtocols="false"/>
    </messageHandler>
    <nativeApp participantId="T7-4-1" > <!-- die lokale sedexId -->
        <outbox dirPath="applicationA/outbox" msgType="10301"> 
            <recipientIdResolver filePath="/mh_examples/case3/mh/install-dir/conf/recipientIdResolver.groovy" method="resolve" />
        </outbox>
        <inbox dirPath="applicationA/inbox" msgTypes="10301"/>
    </nativeApp>
    <transparentApp participantId="T7-4-1" > <!-- die lokale sedexId -->
        <outbox dirPath="applicationB/outbox" />
        <inbox dirPath="applicationB/inbox" msgTypes="112"/>
        <receipts dirPath="applicationB/receipts" msgTypes="112"/>
    </transparentApp>
</config>

...

Code Block
languagehtml/xml
titleconfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://msghandler.suis.admin.ch/xmlns/config config.xsd"
        xmlns="http://msghandler.suis.admin.ch/xmlns/config"
        version="3.01">
    <sedexAdapter>
        <participantId>T7-4-1</participantId>
        <inboxDir>/mh_examples/case4/sedex/inbox</inboxDir>
        <outboxDir>/mh_examples/case4/sedex/outbox</outboxDir>
        <receiptDir>/mh_examples/case4/sedex/receipts</receiptDir>
        <sentDir>/mh_examples/case4/sedex/sent</sentDir>
    </sedexAdapter>
    <messageHandler>
        <!-- In diesem Pfad mssen die MH Basis-Verzeichnisse sein: 
        corrupted, tmp, unkown, etc. -->
        <workingDir dirPath="/mh_examples/case4/mh/working-dir"/>
        <!-- Wo starten relative Pfade -->
        <baseDir dirPath="/mh_examples/case4"/>
        <!--  wie oft wird die sedex inbox geprft -->
        <sedexInboxDirCheck cron="0/30 * * * * ?" />
        <!--  wie oft wird das sedex receipts directoty geprft -->
        <sedexReceiptDirCheck cron="0/30 * * * * ?" />
        <!-- jede *outbox kann Wert berschreiben -->
        <defaultOutboxCheck cron="0/30 * * * * ?" />
        <webserviceInterface host="localhost" port="18080"/>
        <statusDatabase dirPath="/mh_examples/case4/mh/working-dir/db" 
        dataHoldTimeInDays="2" resend="true"/>
        <protocol createPerMessageProtocols="false"/>
    </messageHandler>
    <transparentApp participantId="T7-4-2" > <!-- die lokale sedexId -->
        <outbox dirPath="applicationA/outbox" /> 
        <inbox dirPath="applicationA/inbox" msgTypes="112"/>
        <receipts dirPath="applicationA/receipts" msgTypes="112"/>
    </transparentApp>
    <transparentApp participantId="T7-4-3" > <!-- die lokale sedexId -->
        <outbox dirPath="applicationB/outbox" />
        <inbox dirPath="applicationB/inbox" msgTypes="112"/>
        <receipts dirPath="applicationB/receipts" msgTypes="112"/>
    </transparentApp>
</config>

...

Code Block
languagehtml/xml
titleconfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://msghandler.suis.admin.ch/xmlns/config config.xsd"
    xmlns="http://msghandler.suis.admin.ch/xmlns/config"
    version="3.01">
    
    <sedexAdapter>
        <participantId>T7-4-1</participantId>
        <inboxDir>/mh_examples/case5/sedex/inbox</inboxDir>
        <outboxDir>/mh_examples/case5/sedex/outbox</outboxDir>
        <receiptDir>/mh_examples/case5/sedex/receipts</receiptDir>
        <sentDir>/mh_examples/case5/sedex/sent</sentDir>
    </sedexAdapter>
    
    <messageHandler>
        <!-- In diesem Pfad mssen die MH Basis-Verzeichnisse sein: 
            corrupted, tmp, unkown, etc. -->
        <workingDir dirPath="/mh_examples/case5/mh/working-dir"/>
        <!-- Wo starten relative Pfade -->
        <baseDir dirPath="/mh_examples/case5"/>
        <!--  wie oft wird die sedex inbox geprft -->
        <sedexInboxDirCheck cron="0/30 * * * * ?" />
        <!--  wie oft wird das sedex receipts directoty geprft -->
        <sedexReceiptDirCheck cron="0/30 * * * * ?" />
        <!-- jede *outbox kann Wert berschreiben -->
        <defaultOutboxCheck cron="0/30 * * * * ?" />
        <webserviceInterface host="localhost" port="18080"/>
        <statusDatabase dirPath="/mh_examples/case5/mh/working-dir/db" 
            dataHoldTimeInDays="2" resend="true"/>
        <localRecipients>
            <localRecipient recipientId="T7-4-2" msgTypes="112" />
            <localRecipient recipientId="T7-4-3" msgTypes="112" />
        </localRecipients>
        <protocol createPerMessageProtocols="false"/>
    </messageHandler>
    
    <transparentApp participantId="T7-4-2" > <!-- die lokale sedexId -->
        <outbox dirPath="applicationA/outbox" />
        <inbox dirPath="applicationA/inbox" msgTypes="112"/>
        <receipts dirPath="applicationA/receipts" msgTypes="112"/>
    </transparentApp>
    
    <transparentApp participantId="T7-4-3" > <!-- die lokale sedexId -->
        <outbox dirPath="applicationB/outbox" />
        <inbox dirPath="applicationB/inbox" msgTypes="112"/>
        <receipts dirPath="applicationB/receipts" msgTypes="112"/>
    </transparentApp>
</config>

...

  • One eSchKG/e-LP/e-LEF application (message type = 10301) has to be connected to the sedex network.
  • The application uses a single signing outbox to sign PDF files by the MHThe configuration parameter for signing will be read from the sedex certificate configuration file (CertificateConfiguration.xml).
  • One nativeApp -> Native Mode.

...

Code Block
titleDirectory structure
/mh_examples/case6/
.
+-- application
¦   +-- inbox
¦   +-- outbox
¦   +-- processed
¦   +-- signing-outbox
+-- log
¦   +-- mh
¦   +-- sedex
+-- mh
¦   +-- install-dir
¦   ¦   +-- bin
¦   ¦   +-- conf
¦   ¦   ¦   +-- certificate.p12
¦   ¦   ¦   +-- config.xml
¦   ¦   ¦   +-- config.xsd
¦   ¦   ¦   +-- log4j.properties
¦   ¦   ¦   +-- recipientIdResolver.groovy
¦   ¦   ¦   +-- signature.properties
¦   ¦   +-- lib
¦   +-- working-dir
¦       +-- corrupted
¦       +-- db
¦       +-- sent
¦       +-- tmp
¦       ¦   +-- preparing
¦       ¦   +-- receiving
¦       +-- unknown
+-- sedex
    +-- certificate
inbox    ¦   +-- outboxcertificate1.p12
    +-- conf
 receipts   ¦   +-- sent
Code Block
languagehtml/xml
titleconfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:certificateConfiguration.xml
    ¦   +-- CertificateConfiguration-1-0.xsd
    +-- inbox
    +-- outbox
    +-- receipts
    +-- sent
Code Block
languagehtml/xml
titleconfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://msghandler.suis.admin.ch/xmlns/config config.xsd"
        xmlns="http://msghandler.suis.admin.ch/xmlns/config"
        version="3.01">
    <sedexAdapter>
        <participantId>T7-4-1</participantId>
        <inboxDir>/mh_examples/case6/sedex/inbox</inboxDir>
        <outboxDir>/mh_examples/case6/sedex/outbox</outboxDir>
        <receiptDir>/mh_examples/case6/sedex/receipts</receiptDir>
        <sentDir>/mh_examples/case6/sedex/sent</sentDir>
    </sedexAdapter>
    <messageHandler>
        <!-- In diesem Pfad mssen die MH Basis-Verzeichnisse sein: 
        corrupted, tmp, unkown, etc. -->
        <workingDir dirPath="/mh_examples/case6/mh/working-dir"/>
        <!-- Wo starten relative Pfade -->
        <baseDir dirPath="/mh_examples/case6/application"/>
        <!--  wie oft wird die sedex inbox geprft -->
        <sedexInboxDirCheck cron="0/30 * * * * ?" />
        <!--  wie oft wird das sedex receipts directoty geprft -->
        <sedexReceiptDirCheck cron="0/30 * * * * ?" />
        <!-- jede *outbox kann Wert berschreiben -->
        <defaultOutboxCheck cron="0/30 * * * * ?" />
        <webserviceInterface host="localhost" port="18080"/>
        <statusDatabase dirPath="/mh_examples/case6/mh/working-dir/db" 
        dataHoldTimeInDays="2" resend="true"/>
        <protocol createPerMessageProtocols="false"/>
    </messageHandler>
    <nativeApp participantId="T7-4-1" > <!-- die lokale sedexId -->
        <outbox dirPath="outbox" msgType="10301"> 
            <recipientIdResolver filePath="/mh_examples/case6/mh/install-dir/conf/recipientIdResolver.groovy" method="resolve" />
            <signingOutbox dirPath="signing-outbox" processedDir="processed" signingProfilePath="/mh_examples/case6/mh/install-dir/conf/signature.properties">
                <certificateConfigFile 
<certificate filePath="/                   filePath="/mh_examples/case6/mh/install-dirsedex/conf/certificate.p12" password="secretcertificateConfiguration.xml"/>
            </signingOutbox>
        </outbox>
        <inbox dirPath="inbox" msgTypes="10301"/>
    </nativeApp>
</config>

...

  • One eSchKG/e-LP/e-LEF application (message type = 10301) has to be connected to the sedex network.
  • The application uses two signing outboxes to sign PDF files by the MH. One of these outboxes is configured with a p12 file and password, the other is configured with the sedex certificate configuration file (CertificateConfiguration.xml).
  • One nativeApp -> Native Mode.

...

Code Block
titleDirectory structure
/mh_examples/case7/
.
+-- application
¦   +-- inbox
¦   +-- outbox
¦   +-- signing-outbox1
¦   +-- signing-outbox2
+-- log
¦   +-- mh
¦   +-- sedex
+-- mh
¦   +-- install-dir
¦   ¦   +-- bin
¦   ¦   +-- conf
¦   ¦   ¦   +-- certificate1.p12
¦   ¦   ¦   +-- certificate2config.p12xml
¦   ¦   ¦   +-- config.xmlxsd
¦   ¦   ¦   +-- configlog4j.xsdproperties
¦   ¦   ¦   +-- log4jrecipientIdResolver.propertiesgroovy
¦   ¦   ¦   +-- recipientIdResolversignature1.groovyproperties
¦   ¦   ¦   +-- signature1signature2.properties
¦   ¦   +-- lib
¦   +-- signature2.properties
¦working-dir
¦       +-- corrupted
¦       +-- db
¦       +-- libsent
¦       +-- working-dirtmp
¦       ¦   +-- corruptedpreparing
¦       ¦   +-- dbreceiving
¦       +-- sentunknown
¦+--  sedex
    +-- tmp
¦  certificate
    ¦   +-- preparingcertificate2.p12
  ¦  +-- conf
    ¦   +-- receivingcertificateConfiguration.xml
¦    ¦   +-- unknown
+CertificateConfiguration-1- sedex0.xsd
    +-- inbox
    +-- outbox
    +-- receipts
    +-- sent
Code Block
languagehtml/xml
titleconfig.xml
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://msghandler.suis.admin.ch/xmlns/config config.xsd"
        xmlns="http://msghandler.suis.admin.ch/xmlns/config"
        version="3.01">
    <sedexAdapter>
        <participantId>T7-4-1</participantId>
        <inboxDir>/mh_examples/case7/sedex/inbox</inboxDir>
        <outboxDir>/mh_examples/case7/sedex/outbox</outboxDir>
        <receiptDir>/mh_examples/case7/sedex/receipts</receiptDir>
        <sentDir>/mh_examples/case7/sedex/sent</sentDir>
    </sedexAdapter>
    <messageHandler>
        <!-- In diesem Pfad mssen die MH Basis-Verzeichnisse sein: 
        corrupted, tmp, unkown, etc. -->
        <workingDir dirPath="/mh_examples/case7/mh/working-dir"/>
        <!-- Wo starten relative Pfade -->
        <baseDir dirPath="/mh_examples/case7/application"/>
        <!--  wie oft wird die sedex inbox geprft -->
        <sedexInboxDirCheck cron="0/30 * * * * ?" />
        <!--  wie oft wird das sedex receipts directoty geprft -->
        <sedexReceiptDirCheck cron="0/30 * * * * ?" />
        <!-- jede *outbox kann Wert berschreiben -->
        <defaultOutboxCheck cron="0/30 * * * * ?" />
        <webserviceInterface host="localhost" port="18080"/>
        <statusDatabase dirPath="/mh_examples/case7/mh/working-dir/db" 
        dataHoldTimeInDays="2" resend="true"/>
        <protocol createPerMessageProtocols="false"/>
    </messageHandler>
    <nativeApp participantId="T7-4-1" > <!-- die lokale sedexId -->
        <outbox dirPath="outbox" msgType="10301"> 
            <recipientIdResolver filePath="/mh_examples/case7/mh/install-dir/conf/recipientIdResolver.groovy" method="resolve" />
            <signingOutbox dirPath="signing-outbox1" signingProfilePath="/mh_examples/case7/mh/install-dir/conf/signature1.properties">
                <certificate filePath="/mh_examples/case7/mh/install-dir/conf/certificate1.p12" password="secret"/>
            </signingOutbox>
            <signingOutbox dirPath="signing-outbox2" signingProfilePath="/mh_examples/case7/mh/install-dir/conf/signature2.properties">
                <certificate<certificateConfigFile 
                    filePath="/mh_examples/case7/mh/install-dirsedex/conf/certificate2certificateConfiguration.p12" password="secret"xml"/>
            </signingOutbox>
        </outbox>
        <inbox dirPath="inbox" msgTypes="10301"/>
    </nativeApp>
</config>

 recipientIdResolver.groovy: same as in case 1 

signature1.properties and signature2.properties: See case 6