<?xml version="1.0" encoding="UTF-8"?>











<rss version="2.0">
  <channel>
    <title>Amsetwiki: Amset6createandwrite</title>
    <link>http://socket3.leeds.ac.uk:8080/amsetwiki/</link>
    <description>Wiki for JISC AMSeT Project</description>
    <language>en-us</language>
    <generator>JSPWiki 2.8.1</generator>
    <item>
      <link>http://socket3.leeds.ac.uk:8080/amsetwiki/Wiki.jsp?page=Amset6createandwrite&amp;version=-1</link>
      <title>Amset6createandwrite, version -1</title>
      <description>clayton created this page on Sun Sep 06 13:35:35 BST 2009:&lt;br /&gt;&lt;hr /&gt;&lt;br /&gt;&lt;h4 id="section-Amset6createandwrite-WorkflowNameAmset6createandwrite"&gt;Workflow Name: amset6createandwrite&lt;a class="hashlink" href="#section-Amset6createandwrite-WorkflowNameAmset6createandwrite"&gt;#&lt;/a&gt;&lt;/h4&gt;
&lt;h4 id="section-Amset6createandwrite-ConstituentServicesAuthenticationServiceRepositoryServiceInitCreateContentWSDateTimeWS"&gt;Constituent Services: AuthenticationService, RepositoryService, InitCreateContentWS, DateTimeWS&lt;a class="hashlink" href="#section-Amset6createandwrite-ConstituentServicesAuthenticationServiceRepositoryServiceInitCreateContentWSDateTimeWS"&gt;#&lt;/a&gt;&lt;/h4&gt;
&lt;h4 id="section-Amset6createandwrite-TechnicalNotes"&gt;Technical Notes&lt;a class="hashlink" href="#section-Amset6createandwrite-TechnicalNotes"&gt;#&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;Platform: GlassFishESB V2.1, NetBeans IDE 6.5.1 (Build 200905151554)&lt;br /&gt;
Java: 1.6.0_12; Java HotSpot(TM) Client VM 11.2-b01&lt;br /&gt;
System: Windows XP version 5.1 running on x86; Cp1252; en_GB (nb).
&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;Alfresco Labs 3.1 Final running on remote server, 64-bit Java 1.6.0_13, Tomcat 6 on Red Hat Enterprise Linux 5.
&lt;/p&gt;
&lt;p /&gt;
&lt;h4 id="section-Amset6createandwrite-WorkflowDescription"&gt;Workflow Description&lt;a class="hashlink" href="#section-Amset6createandwrite-WorkflowDescription"&gt;#&lt;/a&gt;&lt;/h4&gt;
&lt;p&gt;&lt;tt&gt;amset4 &lt;/tt&gt; created a node and &lt;tt&gt;amset5 &lt;/tt&gt; wrote content to it.  This workflow combines the two operations.&lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;There is a little lollipop required here.  In order to write to the node in &lt;tt&gt;amset5 &lt;/tt&gt; the uuid returned by the &lt;tt&gt;create &lt;/tt&gt; process in &lt;tt&gt;amset4 &lt;/tt&gt; was supplied.  This is not possible if the two operations are carried out using contiguous Alfresco CML statements, there being no explicit way to pass the newly created uuid to the write statement. &lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;The solution is to link the statements using an &lt;tt&gt;id &lt;/tt&gt; element declared in the &lt;tt&gt;create &lt;/tt&gt; statement and referenced in the &lt;tt&gt;write &lt;/tt&gt; statement.  Alfresco then does the necessary logical linkage of the &lt;tt&gt;create &lt;/tt&gt; and &lt;tt&gt;write &lt;/tt&gt; processes. &lt;br /&gt;
&lt;/p&gt;
&lt;p&gt;The RepositoryService.update() SOAP input and output messages are shown below.  The elements linking the 2 CML statements, both with value &lt;tt&gt;CreateAndWrite&lt;/tt&gt;, are &lt;tt&gt;id &lt;/tt&gt; in &lt;tt&gt;create &lt;/tt&gt; and &lt;tt&gt;where_id &lt;/tt&gt; in &lt;tt&gt;writeContent&lt;/tt&gt;.
&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Code snippet 6.1. RepositoryService.update() SOAP request.&lt;/b&gt;
&lt;/p&gt;
&lt;p /&gt;
&lt;div class="prettify"&gt;
&lt;pre&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;
&amp;lt;SOAP-ENV:Envelope xmlns:SOAP-ENV=&amp;quot;http://schemas.xmlsoap.org/soap/envelope/&amp;quot;&amp;gt;
    &amp;lt;SOAP-ENV:Header&amp;gt;
        &amp;lt;Security xmlns=&amp;quot;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd&amp;quot;&amp;gt;
            &amp;lt;wsu:Timestamp xmlns:wsu=&amp;quot;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd&amp;quot;&amp;gt;
                &amp;lt;wsu:Created&amp;gt;2009-08-18T12:00:20.31+00:00&amp;lt;/wsu:Created&amp;gt;
                &amp;lt;wsu:Expires&amp;gt;2009-08-18T12:04:20.00+00:00&amp;lt;/wsu:Expires&amp;gt;
            &amp;lt;/wsu:Timestamp&amp;gt;
            &amp;lt;UsernameToken&amp;gt;
                &amp;lt;Username&amp;gt;admin&amp;lt;/Username&amp;gt;
                &amp;lt;Password Id=&amp;quot;&amp;quot; Type=&amp;quot;http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText&amp;quot;&amp;gt;TICKET_3a322efa2044d1544e135b48f16729f0f2d5fb17&amp;lt;/Password&amp;gt;
            &amp;lt;/UsernameToken&amp;gt;
        &amp;lt;/Security&amp;gt;
    &amp;lt;/SOAP-ENV:Header&amp;gt;
    &amp;lt;SOAP-ENV:Body&amp;gt;
        &amp;lt;update
            xmlns=&amp;quot;http://www.alfresco.org/ws/service/repository/1.0&amp;quot; xmlns:msgns=&amp;quot;http://www.alfresco.org/ws/service/repository/1.0&amp;quot;&amp;gt;
            &amp;lt;ns0:statements
                xmlns:init=&amp;quot;http://j2ee.netbeans.org/wsdl/amset5createcontent1/InitCreateContentWS&amp;quot;
                xmlns:msgns=&amp;quot;http://j2ee.netbeans.org/wsdl/amset5createcontent1/InitCreateContentWS&amp;quot;
                xmlns:ns=&amp;quot;http://www.alfresco.org/ws/cml/1.0&amp;quot;
                xmlns:ns0=&amp;quot;http://www.alfresco.org/ws/service/repository/1.0&amp;quot; xmlns:ns1=&amp;quot;http://www.alfresco.org/ws/model/content/1.0&amp;quot;&amp;gt;
                &amp;lt;ns:create&amp;gt;
                    &amp;lt;ns:id&amp;gt;CreateAndWrite&amp;lt;/ns:id&amp;gt;
                    &amp;lt;ns:parent&amp;gt;
                        &amp;lt;ns1:store&amp;gt;
                            &amp;lt;ns1:scheme&amp;gt;workspace&amp;lt;/ns1:scheme&amp;gt;
                            &amp;lt;ns1:address&amp;gt;SpacesStore&amp;lt;/ns1:address&amp;gt;
                        &amp;lt;/ns1:store&amp;gt;
                        &amp;lt;ns1:uuid&amp;gt;a390583c-1704-4fb5-955f-826d5a9f8563&amp;lt;/ns1:uuid&amp;gt;
                        &amp;lt;ns1:path/&amp;gt;
                        &amp;lt;ns1:associationType&amp;gt;{http://www.alfresco.org/model/content/1.0}contains&amp;lt;/ns1:associationType&amp;gt;
                        &amp;lt;ns1:childName&amp;gt;{http://www.alfresco.org/model/content/1.0}contains&amp;lt;/ns1:childName&amp;gt;
                    &amp;lt;/ns:parent&amp;gt;
                    &amp;lt;ns:type&amp;gt;{http://www.alfresco.org/model/content/1.0}content&amp;lt;/ns:type&amp;gt;
                    &amp;lt;ns:property&amp;gt;
                        &amp;lt;ns1:name&amp;gt;{http://www.alfresco.org/model/content/1.0}name&amp;lt;/ns1:name&amp;gt;
                        &amp;lt;ns1:isMultiValue&amp;gt;false&amp;lt;/ns1:isMultiValue&amp;gt;
                        &amp;lt;ns1:value&amp;gt;CreateAndWrite.txt&amp;lt;/ns1:value&amp;gt;
                        &amp;lt;ns1:values/&amp;gt;
                    &amp;lt;/ns:property&amp;gt;
                &amp;lt;/ns:create&amp;gt;
                &amp;lt;ns:writeContent&amp;gt;
                    &amp;lt;ns:property&amp;gt;{http://www.alfresco.org/model/content/1.0}content&amp;lt;/ns:property&amp;gt;
                    &amp;lt;ns:content&amp;gt;TWFuIGlzIGRpc3Rpbmd1aXNoZWQsIG5vdCBvbmx5IGJ5IGhpcyByZWFzb24sIGJ1dCBieSB0aGlzIHNpbmd1bGFyIHBhc3Npb24gZnJvbSBvdGhlciBhbmltYWxzLCB3aGljaCBpcyBhIGx1c3Qgb2YgdGhlIG1pbmQsIHRoYXQgYnkgYSBwZXJzZXZlcmFuY2Ugb2YgZGVsaWdodCBpbiB0aGUgY29udGludWVkIGFuZCBpbmRlZmF0aWdhYmxlIGdlbmVyYXRpb24gb2Yga25vd2xlZGdlLCBleGNlZWRzIHRoZSBzaG9ydCB2ZWhlbWVuY2Ugb2YgYW55IGNhcm5hbCBwbGVhc3VyZS4=&amp;lt;/ns:content&amp;gt;
                    &amp;lt;ns:format&amp;gt;
                        &amp;lt;ns1:mimetype&amp;gt;text/plain&amp;lt;/ns1:mimetype&amp;gt;
                        &amp;lt;ns1:encoding&amp;gt;UTF-8&amp;lt;/ns1:encoding&amp;gt;
                    &amp;lt;/ns:format&amp;gt;
                    &amp;lt;ns:where&amp;gt;
                        &amp;lt;ns1:nodes&amp;gt;
                            &amp;lt;ns1:store&amp;gt;
                                &amp;lt;ns1:scheme/&amp;gt;
                                &amp;lt;ns1:address/&amp;gt;
                            &amp;lt;/ns1:store&amp;gt;
                            &amp;lt;ns1:uuid/&amp;gt;
                            &amp;lt;ns1:path/&amp;gt;
                        &amp;lt;/ns1:nodes&amp;gt;
                        &amp;lt;ns1:store&amp;gt;
                            &amp;lt;ns1:scheme/&amp;gt;
                            &amp;lt;ns1:address/&amp;gt;
                        &amp;lt;/ns1:store&amp;gt;
                        &amp;lt;ns1:query&amp;gt;
                            &amp;lt;ns1:language/&amp;gt;
                            &amp;lt;ns1:statement/&amp;gt;
                        &amp;lt;/ns1:query&amp;gt;
                    &amp;lt;/ns:where&amp;gt;
                    &amp;lt;ns:where_id&amp;gt;CreateAndWrite&amp;lt;/ns:where_id&amp;gt;
                &amp;lt;/ns:writeContent&amp;gt;
            &amp;lt;/ns0:statements&amp;gt;
        &amp;lt;/update&amp;gt;
    &amp;lt;/SOAP-ENV:Body&amp;gt;
&amp;lt;/SOAP-ENV:Envelope&amp;gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;b&gt;Code snippet 6.2. RepositoryService.update() SOAP response.&lt;/b&gt;
&lt;/p&gt;
&lt;p /&gt;
&lt;div class="prettify"&gt;
&lt;pre&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot; encoding=&amp;quot;UTF-8&amp;quot;?&amp;gt;
&amp;lt;soapenv:Envelope
    xmlns:soapenv=&amp;quot;http://schemas.xmlsoap.org/soap/envelope/&amp;quot;
    xmlns:xsd=&amp;quot;http://www.w3.org/2001/XMLSchema&amp;quot; xmlns:xsi=&amp;quot;http://www.w3.org/2001/XMLSchema-instance&amp;quot;&amp;gt;
    &amp;lt;soapenv:Body&amp;gt;
        &amp;lt;updateResponse xmlns=&amp;quot;http://www.alfresco.org/ws/service/repository/1.0&amp;quot;&amp;gt;
            &amp;lt;updateReturn&amp;gt;
                &amp;lt;statement&amp;gt;create&amp;lt;/statement&amp;gt;
                &amp;lt;updateCount xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;
                &amp;lt;sourceId&amp;gt;CreateAndWrite&amp;lt;/sourceId&amp;gt;
                &amp;lt;source xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;
                &amp;lt;destination&amp;gt;
                    &amp;lt;ns1:store xmlns:ns1=&amp;quot;http://www.alfresco.org/ws/model/content/1.0&amp;quot;&amp;gt;
                        &amp;lt;ns1:scheme&amp;gt;workspace&amp;lt;/ns1:scheme&amp;gt;
                        &amp;lt;ns1:address&amp;gt;SpacesStore&amp;lt;/ns1:address&amp;gt;
                    &amp;lt;/ns1:store&amp;gt;
                    &amp;lt;ns2:uuid xmlns:ns2=&amp;quot;http://www.alfresco.org/ws/model/content/1.0&amp;quot;&amp;gt;471d4bc3-5285-4f9e-9bab-f923943a76e0&amp;lt;/ns2:uuid&amp;gt;
                    &amp;lt;ns3:path xmlns:ns3=&amp;quot;http://www.alfresco.org/ws/model/content/1.0&amp;quot;&amp;gt;/app:company_home/cm:Waffle_x0020_Bus_x0020_Workflows/cm:What_x0020_is_x0020_the_x0020_Protein_x0020_Folding_x0020_Problem/cm:contains&amp;lt;/ns3:path&amp;gt;
                &amp;lt;/destination&amp;gt;
            &amp;lt;/updateReturn&amp;gt;
            &amp;lt;updateReturn&amp;gt;
                &amp;lt;statement&amp;gt;writeContent&amp;lt;/statement&amp;gt;
                &amp;lt;updateCount xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;
                &amp;lt;sourceId xsi:nil=&amp;quot;true&amp;quot;/&amp;gt;
                &amp;lt;source&amp;gt;
                    &amp;lt;ns4:store xmlns:ns4=&amp;quot;http://www.alfresco.org/ws/model/content/1.0&amp;quot;&amp;gt;
                        &amp;lt;ns4:scheme&amp;gt;workspace&amp;lt;/ns4:scheme&amp;gt;
                        &amp;lt;ns4:address&amp;gt;SpacesStore&amp;lt;/ns4:address&amp;gt;
                    &amp;lt;/ns4:store&amp;gt;
                    &amp;lt;ns5:uuid xmlns:ns5=&amp;quot;http://www.alfresco.org/ws/model/content/1.0&amp;quot;&amp;gt;471d4bc3-5285-4f9e-9bab-f923943a76e0&amp;lt;/ns5:uuid&amp;gt;
                    &amp;lt;ns6:path xmlns:ns6=&amp;quot;http://www.alfresco.org/ws/model/content/1.0&amp;quot;&amp;gt;/app:company_home/cm:Waffle_x0020_Bus_x0020_Workflows/cm:What_x0020_is_x0020_the_x0020_Protein_x0020_Folding_x0020_Problem/cm:contains&amp;lt;/ns6:path&amp;gt;
                &amp;lt;/source&amp;gt;
                &amp;lt;destination&amp;gt;
                    &amp;lt;ns7:store xmlns:ns7=&amp;quot;http://www.alfresco.org/ws/model/content/1.0&amp;quot;&amp;gt;
                        &amp;lt;ns7:scheme&amp;gt;workspace&amp;lt;/ns7:scheme&amp;gt;
                        &amp;lt;ns7:address&amp;gt;SpacesStore&amp;lt;/ns7:address&amp;gt;
                    &amp;lt;/ns7:store&amp;gt;
                    &amp;lt;ns8:uuid xmlns:ns8=&amp;quot;http://www.alfresco.org/ws/model/content/1.0&amp;quot;&amp;gt;471d4bc3-5285-4f9e-9bab-f923943a76e0&amp;lt;/ns8:uuid&amp;gt;
                    &amp;lt;ns9:path xmlns:ns9=&amp;quot;http://www.alfresco.org/ws/model/content/1.0&amp;quot;&amp;gt;/app:company_home/cm:Waffle_x0020_Bus_x0020_Workflows/cm:What_x0020_is_x0020_the_x0020_Protein_x0020_Folding_x0020_Problem/cm:contains&amp;lt;/ns9:path&amp;gt;
                &amp;lt;/destination&amp;gt;
            &amp;lt;/updateReturn&amp;gt;
        &amp;lt;/updateResponse&amp;gt;
    &amp;lt;/soapenv:Body&amp;gt;
&amp;lt;/soapenv:Envelope&amp;gt;

&lt;/pre&gt;
&lt;/div&gt;
&lt;p /&gt;
&lt;p&gt;&lt;b&gt;Figure 6.1.  New content in Alfresco.&lt;/b&gt;
&lt;/p&gt;
&lt;p /&gt;
&lt;p&gt;&lt;table border="0" class="imageplugin" align="left"&gt;
&lt;tr&gt;&lt;td&gt;&lt;img src="/amsetwiki/attach/Amset6createandwrite/createandwrite.png" height="328" width="1028" /&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;

&lt;/p&gt;</description>
      <enclosure url="http://socket3.leeds.ac.uk:8080/amsetwiki/attach/Amset6createandwrite/createandwrite.png" length="14480" type="image/png" />
      <pubDate>Sun, 06 Sep 2009 12:35:35 GMT</pubDate>
    </item>
  </channel>
</rss>

