<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Correspondence Management</title>
	<atom:link href="http://forms.stefcameron.com/2008/06/19/correspondence-management/feed/" rel="self" type="application/rss+xml" />
	<link>http://forms.stefcameron.com/2008/06/19/correspondence-management/</link>
	<description>Building intelligent forms using Adobe LiveCycle Designer</description>
	<lastBuildDate>Tue, 07 Sep 2010 14:26:26 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
	<item>
		<title>By: Stefan Cameron</title>
		<link>http://forms.stefcameron.com/2008/06/19/correspondence-management/comment-page-1/#comment-39193</link>
		<dc:creator>Stefan Cameron</dc:creator>
		<pubDate>Mon, 26 Jan 2009 18:16:24 +0000</pubDate>
		<guid isPermaLink="false">http://forms.stefcameron.com/2008/06/19/correspondence-management/#comment-39193</guid>
		<description>Duarte Cunha Leao,

Yes, you can reference fragments in the LiveCycle Repository using an absolute path. The path must be in the form of

&lt;pre&gt;&lt;code&gt;repository:///root/path/form.xdp#fragRef&lt;/code&gt;&lt;/pre&gt;

where &quot;root&quot; is the root folder in the Repository in which the content is located, &quot;path&quot; is the intermediate path from the root to the content, &quot;form&quot; is the XDP that contains the fragment to be referenced and &quot;fragRef&quot; is the ID or SOM reference to the fragment in the form.

Note the &lt;b&gt;3 slashes&lt;/b&gt; following &quot;repository:&quot; in the path above. If you specify only two (2), the first element in the path is considered to be the &quot;authority&quot; but this syntax is currently not supported.

Also note that &quot;repository:///&quot; paths &lt;b&gt;are not resolved by Designer&lt;/b&gt; which means that when you go to the XML Source to set the absolute path and go back to Designer&#039;s &quot;Design View&quot; or &quot;Master Pages&quot; tabs, you&#039;ll see a &lt;b&gt;broken fragment reference&lt;/b&gt; instead of the actual (resolved) fragment content.

&lt;b&gt;LiveCycle Forms is therefore required to resolve &quot;repository:///&quot; paths.&lt;/b&gt; When you render your form using LC Forms, the fragments will be resolved properly.</description>
		<content:encoded><![CDATA[<p>Duarte Cunha Leao,</p>
<p>Yes, you can reference fragments in the LiveCycle Repository using an absolute path. The path must be in the form of</p>
<pre><code>repository:///root/path/form.xdp#fragRef</code></pre>
<p>where &#8220;root&#8221; is the root folder in the Repository in which the content is located, &#8220;path&#8221; is the intermediate path from the root to the content, &#8220;form&#8221; is the XDP that contains the fragment to be referenced and &#8220;fragRef&#8221; is the ID or SOM reference to the fragment in the form.</p>
<p>Note the <b>3 slashes</b> following &#8220;repository:&#8221; in the path above. If you specify only two (2), the first element in the path is considered to be the &#8220;authority&#8221; but this syntax is currently not supported.</p>
<p>Also note that &#8220;repository:///&#8221; paths <b>are not resolved by Designer</b> which means that when you go to the XML Source to set the absolute path and go back to Designer&#8217;s &#8220;Design View&#8221; or &#8220;Master Pages&#8221; tabs, you&#8217;ll see a <b>broken fragment reference</b> instead of the actual (resolved) fragment content.</p>
<p><b>LiveCycle Forms is therefore required to resolve &#8220;repository:///&#8221; paths.</b> When you render your form using LC Forms, the fragments will be resolved properly.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Duarte Cunha Leão</title>
		<link>http://forms.stefcameron.com/2008/06/19/correspondence-management/comment-page-1/#comment-38606</link>
		<dc:creator>Duarte Cunha Leão</dc:creator>
		<pubDate>Mon, 19 Jan 2009 21:44:11 +0000</pubDate>
		<guid isPermaLink="false">http://forms.stefcameron.com/2008/06/19/correspondence-management/#comment-38606</guid>
		<description>I forgot to include the &quot;element&quot; identifier, in the usehref example:
 usehref=”..\Fragments\Base.xdp#idFieldABC”</description>
		<content:encoded><![CDATA[<p>I forgot to include the &#8220;element&#8221; identifier, in the usehref example:<br />
 usehref=”..\Fragments\Base.xdp#idFieldABC”</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Duarte Cunha Leão</title>
		<link>http://forms.stefcameron.com/2008/06/19/correspondence-management/comment-page-1/#comment-38505</link>
		<dc:creator>Duarte Cunha Leão</dc:creator>
		<pubDate>Sun, 18 Jan 2009 04:59:16 +0000</pubDate>
		<guid isPermaLink="false">http://forms.stefcameron.com/2008/06/19/correspondence-management/#comment-38505</guid>
		<description>I am using LiveCycle Workbench to design xdp documents. We reference fragment xdp documents from the repository and also we have the &quot;usehref&quot;, directly used on field.s, draw.s, to inherit behavior from a common xdp at the repository.
We use something like this: usehref=&quot;..\Fragments\Base.xdp&quot;.
The relative uri limits the placement of refering documents relative to the common xdp (unless, of course we would change the relative path accordingly, but we have fixed templates in the object library , so we would like to avoid that).

Is there a way to use absolute uris, in the usehref attribute, to reference documents in the repository?

I&#039;ve tried all obvious combinations of uris containing a &quot;repository&quot; or &quot;resource&quot; uri-scheme, like in:
repository://Base.xdp

Thanks in advance</description>
		<content:encoded><![CDATA[<p>I am using LiveCycle Workbench to design xdp documents. We reference fragment xdp documents from the repository and also we have the &#8220;usehref&#8221;, directly used on field.s, draw.s, to inherit behavior from a common xdp at the repository.<br />
We use something like this: usehref=&#8221;..\Fragments\Base.xdp&#8221;.<br />
The relative uri limits the placement of refering documents relative to the common xdp (unless, of course we would change the relative path accordingly, but we have fixed templates in the object library , so we would like to avoid that).</p>
<p>Is there a way to use absolute uris, in the usehref attribute, to reference documents in the repository?</p>
<p>I&#8217;ve tried all obvious combinations of uris containing a &#8220;repository&#8221; or &#8220;resource&#8221; uri-scheme, like in:<br />
repository://Base.xdp</p>
<p>Thanks in advance</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stefan Cameron</title>
		<link>http://forms.stefcameron.com/2008/06/19/correspondence-management/comment-page-1/#comment-38241</link>
		<dc:creator>Stefan Cameron</dc:creator>
		<pubDate>Thu, 15 Jan 2009 15:18:51 +0000</pubDate>
		<guid isPermaLink="false">http://forms.stefcameron.com/2008/06/19/correspondence-management/#comment-38241</guid>
		<description>nep,

In response to your second comment (on Jan 11th, 2009), what bug is it you think you have discovered?</description>
		<content:encoded><![CDATA[<p>nep,</p>
<p>In response to your second comment (on Jan 11th, 2009), what bug is it you think you have discovered?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stefan Cameron</title>
		<link>http://forms.stefcameron.com/2008/06/19/correspondence-management/comment-page-1/#comment-38193</link>
		<dc:creator>Stefan Cameron</dc:creator>
		<pubDate>Wed, 14 Jan 2009 16:19:03 +0000</pubDate>
		<guid isPermaLink="false">http://forms.stefcameron.com/2008/06/19/correspondence-management/#comment-38193</guid>
		<description>nep,

With regards to your first comment (on Jan 8, 2009), I believe the template you create will need to be stored in the LiveCycle Repository prior to being rendered as a PDF. Otherwise, the render service will not be able to resolve the fragments, as you&#039;re seeing in your test.

This is where the Correspondence Management SDK could help you out since the CM Model API has classes that can create assets directly in the LC Repository. The only problem here might be that it&#039;s written in ActionScript and I think you&#039;re using Java -- not sure.

In any case, here&#039;s how you would use the API to create a new generic form resource, stuff your dynamically-generated template content into it and save it to the LC Repository using the &lt;a href=&quot;http://www.adobe.com/products/livecycle/solutionaccelerators/download.html&quot; rel=&quot;nofollow&quot;&gt;currently-posted release&lt;/a&gt;:

&lt;pre&gt;&lt;code&gt;import cm.model.CmObject;
import cm.model.CmSession;
import cm.model.repository.CmResourceType;
import cm.model.repository.CmRepositoryEvent;
import cm.model.repository.CmRepositoryFactory;
import cm.model.repository.CmResourceCollection;
import cm.model.repository.ICmRepository;

private function onBtnClick(event:Event):void
{
    // create a new generic form template resource object
    var xdp:CmObject = new CmObject();
    xdp.resourceType = CmResourceType.FORM_TEMPLATE;
    xdp.path = &quot;/cm/content/myForm.xdp&quot;;
    xdp.contentType = &quot;application/vnd.adobe.xdp+xml&quot;;
    xdp.contentData = &#039;&lt;xdp&gt;&lt;template&gt;&lt;subform name=&quot;root&quot;&gt;&lt;subform name=&quot;page&quot;&gt;&lt;field/&gt;&lt;/subform&gt;&lt;/subform&gt;&lt;/template&gt;&lt;/xdp&gt;&#039;;
	
    // make sure there&#039;s an active, authenticated session
    if (CmSession.getInstance() == null &#124;&#124; !CmSession.getInstance().authenticated)
        CmSession.createInstance(username, password, server, port);
	
    // get an instance of the LC Repository
    var rep:ICmRepository = CmRepositoryFactory.getInstance();
	
    // save it in the LC Repository
    rep.save(xdp, true, onSave, onSaveFault);
}

private function onSave(event:CmRepositoryEvent):void
{
    Alert.show(&quot;Saved XDP to LC Repository&quot;);
}

private function onSaveFault(event:FaultEvent):void
{
    Alert.show(&quot;Error occurred while attempting to save: &quot; + event.fault.toString());
}&lt;/code&gt;&lt;/pre&gt;</description>
		<content:encoded><![CDATA[<p>nep,</p>
<p>With regards to your first comment (on Jan 8, 2009), I believe the template you create will need to be stored in the LiveCycle Repository prior to being rendered as a PDF. Otherwise, the render service will not be able to resolve the fragments, as you&#8217;re seeing in your test.</p>
<p>This is where the Correspondence Management SDK could help you out since the CM Model API has classes that can create assets directly in the LC Repository. The only problem here might be that it&#8217;s written in ActionScript and I think you&#8217;re using Java &#8212; not sure.</p>
<p>In any case, here&#8217;s how you would use the API to create a new generic form resource, stuff your dynamically-generated template content into it and save it to the LC Repository using the <a href="http://www.adobe.com/products/livecycle/solutionaccelerators/download.html" rel="nofollow">currently-posted release</a>:</p>
<pre><code>import cm.model.CmObject;
import cm.model.CmSession;
import cm.model.repository.CmResourceType;
import cm.model.repository.CmRepositoryEvent;
import cm.model.repository.CmRepositoryFactory;
import cm.model.repository.CmResourceCollection;
import cm.model.repository.ICmRepository;

private function onBtnClick(event:Event):void
{
    // create a new generic form template resource object
    var xdp:CmObject = new CmObject();
    xdp.resourceType = CmResourceType.FORM_TEMPLATE;
    xdp.path = "/cm/content/myForm.xdp";
    xdp.contentType = "application/vnd.adobe.xdp+xml";
    xdp.contentData = '&lt;xdp>&lt;template>&lt;subform name="root">&lt;subform name="page">&lt;field/>&lt;/subform>&lt;/subform>&lt;/template>&lt;/xdp>';

    // make sure there's an active, authenticated session
    if (CmSession.getInstance() == null || !CmSession.getInstance().authenticated)
        CmSession.createInstance(username, password, server, port);

    // get an instance of the LC Repository
    var rep:ICmRepository = CmRepositoryFactory.getInstance();

    // save it in the LC Repository
    rep.save(xdp, true, onSave, onSaveFault);
}

private function onSave(event:CmRepositoryEvent):void
{
    Alert.show("Saved XDP to LC Repository");
}

private function onSaveFault(event:FaultEvent):void
{
    Alert.show("Error occurred while attempting to save: " + event.fault.toString());
}</code></pre>
]]></content:encoded>
	</item>
	<item>
		<title>By: nep</title>
		<link>http://forms.stefcameron.com/2008/06/19/correspondence-management/comment-page-1/#comment-38015</link>
		<dc:creator>nep</dc:creator>
		<pubDate>Sun, 11 Jan 2009 23:21:50 +0000</pubDate>
		<guid isPermaLink="false">http://forms.stefcameron.com/2008/06/19/correspondence-management/#comment-38015</guid>
		<description>Stefan,

While trying to solve the problem from my last reply, I think I discover a bug. If possible I would like to send you the xml of my process.

thank you</description>
		<content:encoded><![CDATA[<p>Stefan,</p>
<p>While trying to solve the problem from my last reply, I think I discover a bug. If possible I would like to send you the xml of my process.</p>
<p>thank you</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: nep</title>
		<link>http://forms.stefcameron.com/2008/06/19/correspondence-management/comment-page-1/#comment-37873</link>
		<dc:creator>nep</dc:creator>
		<pubDate>Fri, 09 Jan 2009 01:02:47 +0000</pubDate>
		<guid isPermaLink="false">http://forms.stefcameron.com/2008/06/19/correspondence-management/#comment-37873</guid>
		<description>Hello Stefan,

Using some steps in process, I was able to create a xfa template held in a xml variable. This xfa template has some fragments with relative urls to the repository. However, when I tranform this xdp template into a pdf it seems my fragments are not being resolved. I think this happens because there is not a position context to this xfa template in the repository as it was created dynamically. As so, do you know another way to point to the repository fragments without depending of the location of the main template?

thank you</description>
		<content:encoded><![CDATA[<p>Hello Stefan,</p>
<p>Using some steps in process, I was able to create a xfa template held in a xml variable. This xfa template has some fragments with relative urls to the repository. However, when I tranform this xdp template into a pdf it seems my fragments are not being resolved. I think this happens because there is not a position context to this xfa template in the repository as it was created dynamically. As so, do you know another way to point to the repository fragments without depending of the location of the main template?</p>
<p>thank you</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stefan Cameron</title>
		<link>http://forms.stefcameron.com/2008/06/19/correspondence-management/comment-page-1/#comment-34478</link>
		<dc:creator>Stefan Cameron</dc:creator>
		<pubDate>Wed, 03 Dec 2008 14:12:20 +0000</pubDate>
		<guid isPermaLink="false">http://forms.stefcameron.com/2008/06/19/correspondence-management/#comment-34478</guid>
		<description>nep,

Since PIs not generated by XFA are ignored in XFA processors, you should be able to define one PI to mark the insertion point for the &lt;subform usehref=&quot;...&quot;/&gt; nodes and append them after the PI in the document instead of trying to predict how many PIs you will need. After you&#039;re done adding fragment references, you can either leave the PI in there or remove it; it shouldn&#039;t make a difference either way.

For form guide rendering from LiveCycle, what I&#039;m saying is that you would set the innerHTML property of an &lt;iframe/&gt; node to what the call to the &quot;renderform&quot; API returns which will be a short HTML stub containing some callbacks for FormServer. The result, when the iframe is rendered, will be what you asked for in the &quot;renderform&quot; API call. If you ask for the form guide without the PDF, that&#039;s what you&#039;ll end-up with.

As for invoking another LC process from within the form guide and passing it the guide&#039;s data, you should be able to get the guide&#039;s data by doing xfa.datasets.data.saveXML() as you would normally do in the PDF and then do a remove object call into LC in order to invoke the process. For an example, have a look at the Custom Communications &quot;CSR&quot; AIR app that&#039;s included in the CM SDK&#039;s applications folder (source is included in the SDK as well).</description>
		<content:encoded><![CDATA[<p>nep,</p>
<p>Since PIs not generated by XFA are ignored in XFA processors, you should be able to define one PI to mark the insertion point for the &lt;subform usehref=&#8221;&#8230;&#8221;/> nodes and append them after the PI in the document instead of trying to predict how many PIs you will need. After you&#8217;re done adding fragment references, you can either leave the PI in there or remove it; it shouldn&#8217;t make a difference either way.</p>
<p>For form guide rendering from LiveCycle, what I&#8217;m saying is that you would set the innerHTML property of an &lt;iframe/> node to what the call to the &#8220;renderform&#8221; API returns which will be a short HTML stub containing some callbacks for FormServer. The result, when the iframe is rendered, will be what you asked for in the &#8220;renderform&#8221; API call. If you ask for the form guide without the PDF, that&#8217;s what you&#8217;ll end-up with.</p>
<p>As for invoking another LC process from within the form guide and passing it the guide&#8217;s data, you should be able to get the guide&#8217;s data by doing xfa.datasets.data.saveXML() as you would normally do in the PDF and then do a remove object call into LC in order to invoke the process. For an example, have a look at the Custom Communications &#8220;CSR&#8221; AIR app that&#8217;s included in the CM SDK&#8217;s applications folder (source is included in the SDK as well).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: nep</title>
		<link>http://forms.stefcameron.com/2008/06/19/correspondence-management/comment-page-1/#comment-34330</link>
		<dc:creator>nep</dc:creator>
		<pubDate>Sun, 30 Nov 2008 14:27:09 +0000</pubDate>
		<guid isPermaLink="false">http://forms.stefcameron.com/2008/06/19/correspondence-management/#comment-34330</guid>
		<description>Stefan,

The code I was trying to show here was actually your own code from a previous post. The idea was to add one of this line in the final xdp, based on the avaliation rules about which fragments that final xdp should have. I think this should be something easy to accomplish... 

&lt;subform usehref=&quot;../frag/main.xdp#som($template.#subform[0].fragSF)&quot;/&gt;

About form guides, you are saying that form server will reply a stub to the formguide. This was confusing me, because I was seeing the reply as a base64 stream ripped from the xdp of the source template. What I was not understanding was how all those javascript files used by formguides would come from. If that stub is something like an html link, then I think I understand how it will work. However, if you know someone that as done this, or any example elsewhere, please let me know, becuase that would be a great help.

With this formguide, I would like to invoke another livecycle process, passing it a xml stream of the data. That way I will not need to create a custom screen/form in any other technology. However, the call to the formguide should be done using a java/.net client, that is why I need to retrieve  a formguide from livecycle. I know I could use workspace as the client, but I would like to have other alternatives.

Thank you</description>
		<content:encoded><![CDATA[<p>Stefan,</p>
<p>The code I was trying to show here was actually your own code from a previous post. The idea was to add one of this line in the final xdp, based on the avaliation rules about which fragments that final xdp should have. I think this should be something easy to accomplish&#8230; </p>
<p>&lt;subform usehref=&#8221;../frag/main.xdp#som($template.#subform[0].fragSF)&#8221;/&gt;</p>
<p>About form guides, you are saying that form server will reply a stub to the formguide. This was confusing me, because I was seeing the reply as a base64 stream ripped from the xdp of the source template. What I was not understanding was how all those javascript files used by formguides would come from. If that stub is something like an html link, then I think I understand how it will work. However, if you know someone that as done this, or any example elsewhere, please let me know, becuase that would be a great help.</p>
<p>With this formguide, I would like to invoke another livecycle process, passing it a xml stream of the data. That way I will not need to create a custom screen/form in any other technology. However, the call to the formguide should be done using a java/.net client, that is why I need to retrieve  a formguide from livecycle. I know I could use workspace as the client, but I would like to have other alternatives.</p>
<p>Thank you</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Stefan Cameron</title>
		<link>http://forms.stefcameron.com/2008/06/19/correspondence-management/comment-page-1/#comment-33527</link>
		<dc:creator>Stefan Cameron</dc:creator>
		<pubDate>Tue, 18 Nov 2008 15:13:37 +0000</pubDate>
		<guid isPermaLink="false">http://forms.stefcameron.com/2008/06/19/correspondence-management/#comment-33527</guid>
		<description>nep,

I&#039;m guessing you included some code with a &quot;&lt;&quot; bracket in it and it got wiped-out so I can&#039;t help you there. If you re-post it, replace any &quot;&amp;lt&quot; brackets with &quot;&lt;&quot;.

Yes, you can render a form as a form guide without the PDF. LC Forms will have a switch you can set (or not) to choose whether to include the PDF with the form guide.

As for your last question, I&#039;m guessing you&#039;re trying to get the form guide to show-up within some other framework. As I understand it, this can be done by using an iframe and setting its source to the HTML stub returned from a call to LiveCycle Forms&#039; &quot;renderform&quot; API. Using this API call, you can request that a particular form be rendered as a form guide and the HTML stub returned will contain the code necessary to display the form guide rendered by LC Forms. I&#039;ve never done this myself but I&#039;ve seen it done before.</description>
		<content:encoded><![CDATA[<p>nep,</p>
<p>I&#8217;m guessing you included some code with a &#8220;&lt;&#8221; bracket in it and it got wiped-out so I can&#8217;t help you there. If you re-post it, replace any &#8220;&#038;lt&#8221; brackets with &#8220;&amp;lt;&#8221;.</p>
<p>Yes, you can render a form as a form guide without the PDF. LC Forms will have a switch you can set (or not) to choose whether to include the PDF with the form guide.</p>
<p>As for your last question, I&#8217;m guessing you&#8217;re trying to get the form guide to show-up within some other framework. As I understand it, this can be done by using an iframe and setting its source to the HTML stub returned from a call to LiveCycle Forms&#8217; &#8220;renderform&#8221; API. Using this API call, you can request that a particular form be rendered as a form guide and the HTML stub returned will contain the code necessary to display the form guide rendered by LC Forms. I&#8217;ve never done this myself but I&#8217;ve seen it done before.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
