<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: job processor context.connection is invalid in Vault Customization Forum</title>
    <link>https://forums.autodesk.com/t5/vault-customization-forum/job-processor-context-connection-is-invalid/m-p/5287147#M10383</link>
    <description>&lt;PRE&gt;I had the same issue, here is my code that worked for me.&lt;BR /&gt;&lt;BR /&gt;It downloads a file when the status changes to relased. this is setup with the lifecycleEventEditor.&lt;BR /&gt;&lt;BR /&gt;First of all from what i was reading in the sdk you don't need to login anymore when using the jobprocessor. Second you can't get the file master id passed from a job - but you can get the fileId. as fare as i know.&lt;BR /&gt;&lt;BR /&gt;this code downloads a file without selecting it in the vault explorer.&lt;BR /&gt;&lt;BR /&gt;Public Function Execute(context As ACJE.IJobProcessorServices, job As ACJE.IJob) As ACJE.JobOutcome Implements ACJE.IJobHandler.Execute

            'Dim fileMasterId As Long = Convert.ToInt64(job.Params("FileMasterId"))

            Dim MyfileId As Long = Convert.ToInt64(job.Params("FileId"))

            Try

                Dim file As ACW.File = context.Connection.WebServiceManager.DocumentService.GetFileById(MyfileId)

                'Dim file As ACW.File = context.Connection.WebServiceManager.DocumentService.GetLatestFileByMasterId(fileMasterId)

                Dim fileIter As VDF.Vault.Currency.Entities.FileIteration = context.Connection.FileManager.GetFilesByIterationIds(New Long() {file.Id}).First().Value

                Publish(fileIter, context.Connection)

                Return ACJE.JobOutcome.Success

            Catch

                Return ACJE.JobOutcome.Failure

            End Try

        End Function&lt;BR /&gt;&lt;BR /&gt;regards kent boettger&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Sat, 20 Sep 2014 12:39:03 GMT</pubDate>
    <dc:creator>Anonymous</dc:creator>
    <dc:date>2014-09-20T12:39:03Z</dc:date>
    <item>
      <title>job processor context.connection is invalid</title>
      <link>https://forums.autodesk.com/t5/vault-customization-forum/job-processor-context-connection-is-invalid/m-p/5084088#M10380</link>
      <description>&lt;P&gt;Hello.&amp;nbsp; I'm trying to understand the nuances of custom jobs for the job processor and i've hit a snag.&amp;nbsp; Basically, when i try to reference the context.connection, I'm getting the following:&lt;/P&gt;&lt;P&gt;CreatePDF started...;Error=311;Type=System.Web.Services.Protocols.SoapException;Stack=&amp;nbsp;&amp;nbsp; at Connectivity.JobHandlers.Services.Utils.JobHelper.LoginToVault(String username, String password, String vaultname, String server, Boolean winAuth)&lt;BR /&gt;&amp;nbsp;&amp;nbsp; at Connectivity.JobHandlers.Services.Objects.ServiceJobProcessorServices.get_Connection()&lt;BR /&gt;&amp;nbsp;&amp;nbsp; at Walmart.StoreLayout.VaultJobs.TestJobHandler.Execute(IJobProcessorServices context, IJob job) in d:\jpark18\Visual Studio 2012\Projects\wmtuscad\CadUtilities\VaultUploader\StoreLayoutTestJob\TestJob.cs:line 42&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The code looks like this:&lt;/P&gt;&lt;PRE&gt;	&lt;SPAN style="color: blue;"&gt;public&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="color: blue;"&gt;class&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="color: #2b91af;"&gt;TestJobHandler&lt;/SPAN&gt;&amp;nbsp;:&amp;nbsp;ACJE.&lt;SPAN style="color: #2b91af;"&gt;IJobHandler&lt;/SPAN&gt;
	{
		&lt;SPAN style="color: blue;"&gt;public&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="color: blue;"&gt;string&lt;/SPAN&gt;&amp;nbsp;WorkingFolder&amp;nbsp;{&amp;nbsp;&lt;SPAN style="color: blue;"&gt;get&lt;/SPAN&gt;;&amp;nbsp;&lt;SPAN style="color: blue;"&gt;set&lt;/SPAN&gt;;&amp;nbsp;}
 
		&lt;SPAN style="color: blue;"&gt;public&lt;/SPAN&gt;&amp;nbsp;TestJobHandler()
		{
			WorkingFolder&amp;nbsp;=&amp;nbsp;&lt;SPAN style="color: #a31515;"&gt;"C:\\temp\\vault\\jobprocessor"&lt;/SPAN&gt;;
		}
 
		&lt;SPAN style="color: blue;"&gt;public&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="color: blue;"&gt;bool&lt;/SPAN&gt;&amp;nbsp;CanProcess(&lt;SPAN style="color: blue;"&gt;string&lt;/SPAN&gt;&amp;nbsp;jobType)
		{
			&lt;SPAN style="color: blue;"&gt;if&lt;/SPAN&gt;&amp;nbsp;(jobType.ToLower()&amp;nbsp;==&amp;nbsp;&lt;SPAN style="color: #a31515;"&gt;"walmart.storelayout.createpdf"&lt;/SPAN&gt;)
				&lt;SPAN style="color: blue;"&gt;return&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="color: blue;"&gt;true&lt;/SPAN&gt;;
 
			&lt;SPAN style="color: blue;"&gt;return&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="color: blue;"&gt;false&lt;/SPAN&gt;;
		}
 
		&lt;SPAN style="color: blue;"&gt;public&lt;/SPAN&gt;&amp;nbsp;ACJE.&lt;SPAN style="color: #2b91af;"&gt;JobOutcome&lt;/SPAN&gt;&amp;nbsp;Execute(ACJE.&lt;SPAN style="color: #2b91af;"&gt;IJobProcessorServices&lt;/SPAN&gt;&amp;nbsp;context,&amp;nbsp;ACJE.&lt;SPAN style="color: #2b91af;"&gt;IJob&lt;/SPAN&gt;&amp;nbsp;job)
		{
			context.Log(&lt;SPAN style="color: #a31515;"&gt;"CreatePDF&amp;nbsp;started..."&lt;/SPAN&gt;,&amp;nbsp;ACJE.&lt;SPAN style="color: #2b91af;"&gt;MessageType&lt;/SPAN&gt;.eInformation);
 
			&lt;SPAN style="color: blue;"&gt;try&lt;/SPAN&gt;
			{
				&lt;SPAN style="color: blue;"&gt;long&lt;/SPAN&gt;&amp;nbsp;fileMasterId&amp;nbsp;=&amp;nbsp;&lt;SPAN style="color: #2b91af;"&gt;Convert&lt;/SPAN&gt;.ToInt64(job.Params[&lt;SPAN style="color: #a31515;"&gt;"FileId"&lt;/SPAN&gt;]);
 
				&lt;SPAN style="color: green;"&gt;//&amp;nbsp;Retrieve&amp;nbsp;the&amp;nbsp;file&amp;nbsp;object&amp;nbsp;from&amp;nbsp;the&amp;nbsp;server&lt;/SPAN&gt;
				&lt;SPAN style="color: green;"&gt;//&lt;/SPAN&gt;
	&lt;STRONG&gt;Code fails here --&amp;gt;&lt;/STRONG&gt;	&lt;SPAN style="color: #2b91af;"&gt;Debug&lt;/SPAN&gt;.WriteLine(&lt;SPAN style="color: #a31515;"&gt;"connected={0};iswindows={1};user={2}"&lt;/SPAN&gt;,&amp;nbsp;context.Connection.IsConnected,
					context.Connection.IsWindowsAuthenticatedConnection,&amp;nbsp;context.Connection.UserName);
 
				ACW.&lt;SPAN style="color: #2b91af;"&gt;File&lt;/SPAN&gt;&amp;nbsp;file&amp;nbsp;=&amp;nbsp;context.Connection.WebServiceManager.DocumentService.GetLatestFileByMasterId(fileMasterId);
				VDF.Vault.Currency.Entities.&lt;SPAN style="color: #2b91af;"&gt;FileIteration&lt;/SPAN&gt;&amp;nbsp;fileIter&amp;nbsp;=
					&amp;nbsp;context.Connection.FileManager.GetFilesByIterationIds(&lt;SPAN style="color: blue;"&gt;new&lt;/SPAN&gt;&amp;nbsp;&lt;SPAN style="color: blue;"&gt;long&lt;/SPAN&gt;[]&amp;nbsp;{&amp;nbsp;file.Id&amp;nbsp;}).First().Value;
 
				&lt;SPAN style="color: green;"&gt;//&amp;nbsp;Download&amp;nbsp;and&amp;nbsp;publish&amp;nbsp;the&amp;nbsp;file&lt;/SPAN&gt;
				&lt;SPAN style="color: green;"&gt;//&lt;/SPAN&gt;
				Publish(fileIter,&amp;nbsp;context.Connection);
 
				&lt;SPAN style="color: blue;"&gt;return&lt;/SPAN&gt;&amp;nbsp;ACJE.&lt;SPAN style="color: #2b91af;"&gt;JobOutcome&lt;/SPAN&gt;.Success;
			}
			&lt;SPAN style="color: blue;"&gt;catch&lt;/SPAN&gt;&amp;nbsp;(&lt;SPAN style="color: #2b91af;"&gt;Exception&lt;/SPAN&gt;&amp;nbsp;e)
			{
				context.Log(&lt;SPAN style="color: #a31515;"&gt;"Error={0}"&lt;/SPAN&gt;.FMe(e.Message),&amp;nbsp;ACJE.&lt;SPAN style="color: #2b91af;"&gt;MessageType&lt;/SPAN&gt;.eError);
				context.Log(&lt;SPAN style="color: #a31515;"&gt;"Type={0}"&lt;/SPAN&gt;.FMe(e.GetType().FullName),&amp;nbsp;ACJE.&lt;SPAN style="color: #2b91af;"&gt;MessageType&lt;/SPAN&gt;.eError);
				context.Log(&lt;SPAN style="color: #a31515;"&gt;"Stack={0}"&lt;/SPAN&gt;.FMe(e.StackTrace),&amp;nbsp;ACJE.&lt;SPAN style="color: #2b91af;"&gt;MessageType&lt;/SPAN&gt;.eError);
				
				&lt;SPAN style="color: blue;"&gt;return&lt;/SPAN&gt;&amp;nbsp;ACJE.&lt;SPAN style="color: #2b91af;"&gt;JobOutcome&lt;/SPAN&gt;.Failure;
			}
		}&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;A fiddler trace shows:&lt;/P&gt;&lt;P&gt;HTTP/1.1 500 Internal Server Error&lt;BR /&gt;Cache-Control: private&lt;BR /&gt;Content-Length: 1839&lt;BR /&gt;Content-Type: multipart/related; type="application/xop+xml";start="&amp;lt;&lt;A href="https://forums.autodesk.com/t5/forums/postpage/board-id/" target="_blank"&gt;http://tempuri.org/0&amp;gt;";boundary="uuid:b6feab63-b9c1-4e08-a8fa-7d7ab552a3d6+id=46";start-info="text/xml"&lt;/A&gt;&lt;BR /&gt;Server: Microsoft-IIS/7.5&lt;BR /&gt;MIME-Version: 1.0&lt;BR /&gt;X-AspNet-Version: 4.0.30319&lt;BR /&gt;X-Powered-By: ASP.NET&lt;BR /&gt;Date: Mon, 09 Jun 2014 22:25:54 GMT&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;--uuid:b6feab63-b9c1-4e08-a8fa-7d7ab552a3d6+id=46&lt;BR /&gt;Content-ID: &amp;lt;&lt;A href="https://forums.autodesk.com/t5/forums/postpage/board-id/" target="_blank"&gt;http://tempuri.org/0&amp;gt;&lt;/A&gt;&lt;BR /&gt;Content-Transfer-Encoding: 8bit&lt;BR /&gt;Content-Type: application/xop+xml;charset=utf-8;type="text/xml"&lt;/P&gt;&lt;P&gt;&amp;lt;s:Envelope xmlns:s="&lt;A href="https://forums.autodesk.com/t5/forums/postpage/board-id/" target="_blank"&gt;http://schemas.xmlsoap.org/soap/envelope/"&amp;gt;&amp;lt;s:Body&amp;gt;&amp;lt;s:Fault&amp;gt;&amp;lt;faultcode&amp;gt;s:Server&amp;lt;/faultcode&amp;gt;&amp;lt;faultstring&lt;/A&gt; xml:lang="en-US"&amp;gt;311&amp;lt;/faultstring&amp;gt;&amp;lt;detail&amp;gt;&amp;lt;sl:sldetail xmlns:sl="&lt;A href="https://forums.autodesk.com/t5/forums/postpage/board-id/" target="_blank"&gt;http://streamline.autodesk.com/faultschema"&amp;gt;&amp;lt;sl:errorcode&amp;gt;311&amp;lt;/sl:errorcode&amp;gt;&amp;lt;sl:mesg-id&amp;gt;635379315551996385&amp;lt;/sl:mesg-id&amp;gt;&amp;lt;sl:param&lt;/A&gt; sl:pid="1"&amp;gt;&lt;STRONG&gt;domain\userid&lt;/STRONG&gt;&amp;lt;/sl:param&amp;gt;&amp;lt;sl:param sl:pid="2"&amp;gt;ActiveDirectory&amp;lt;/sl:param&amp;gt;&amp;lt;sl:stack&amp;gt;&amp;nbsp;&amp;nbsp; at Connectivity.Server.Proxies.ServiceAccessor`3.tryexecute(String remoteServer, Action`1 action, Int32 attemptCount)&amp;amp;#xD;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; at Connectivity.Server.Proxies.ServiceAccessor`3.Execute(String remoteServer, Action`1 action)&amp;amp;#xD;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; at Connectivity.Filestore.AuthenticationService.CreateSession(AuthCredentials creds, String dataServer, String knowledgeVault, Boolean isLicensed, Byte[] p)&amp;amp;#xD;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; at Connectivity.Web.Filestore.v18.AuthService.SignIn(String dataServer, String userName, String userPassword, String knowledgeVault)&amp;amp;#xD;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; at SyncInvokeSignIn(Object , Object[] , Object[] )&amp;amp;#xD;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]&amp;amp;amp; outputs)&amp;amp;#xD;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc&amp;amp;amp; rpc)&amp;amp;#xD;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc&amp;amp;amp; rpc)&amp;amp;#xD;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc&amp;amp;amp; rpc)&amp;amp;#xD;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)&amp;lt;/sl:stack&amp;gt;&amp;lt;/sl:sldetail&amp;gt;&amp;lt;/detail&amp;gt;&amp;lt;/s:Fault&amp;gt;&amp;lt;/s:Body&amp;gt;&amp;lt;/s:Envelope&amp;gt;&lt;BR /&gt;--uuid:b6feab63-b9c1-4e08-a8fa-7d7ab552a3d6+id=46--&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Any thoughts or advice would be appreciated.&amp;nbsp; I've just been referring to the sample code and i don't see any reason for the reference to the connection to blow up.&amp;nbsp; The domain\userid has rights to log in and it starts up, pulls the job, but when it tries to execute it, it fails.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Please advise,&lt;/P&gt;&lt;P&gt;Jon&lt;/P&gt;</description>
      <pubDate>Mon, 09 Jun 2014 22:34:28 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vault-customization-forum/job-processor-context-connection-is-invalid/m-p/5084088#M10380</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2014-06-09T22:34:28Z</dc:date>
    </item>
    <item>
      <title>Re: job processor context.connection is invalid</title>
      <link>https://forums.autodesk.com/t5/vault-customization-forum/job-processor-context-connection-is-invalid/m-p/5096590#M10381</link>
      <description>&lt;P&gt;Jon&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Are you running Job Processor as a Windows User ?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;There were issues with this - as in it didn't work at all&lt;SPAN&gt;&amp;nbsp;- but was fixed in a Service Pack&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;See this for a similar case -&amp;nbsp;&lt;A href="https://forums.autodesk.com/t5/Vault-Customization/JobServer-WindowAuthentication/m-p/4771969" target="_self"&gt;http://forums.autodesk.com/t5/Vault-Customization/JobServer-WindowAuthentication/m-p/4771969&lt;/A&gt;&lt;A href="https://forums.autodesk.com/t5/Vault-Customization/JobServer-WindowAuthentication/m-p/4771969" target="_blank"&gt;&lt;BR /&gt;&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;The only version I am sure about is 2014, where you need to be running SP2 -&amp;nbsp;&lt;A href="http://knowledge.autodesk.com/support/vault-products/downloads/caas/downloads/content/autodesk-vault-2014-service-pack-2-for-autodesk-vault-basic-2014-autodesk-vault-workgroup.html" target="_self"&gt;http://knowledge.autodesk.com/support/vault-products/downloads/caas/downloads/content/autodesk-vault-2014-service-pack-2-for-autodesk-vault-basic-2014-autodesk-vault-workgroup.html&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I'd have thought it would be fixed in 2015 RTM too, but have not tried it&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Nick&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;&amp;nbsp;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 16 Jun 2014 02:51:05 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vault-customization-forum/job-processor-context-connection-is-invalid/m-p/5096590#M10381</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2014-06-16T02:51:05Z</dc:date>
    </item>
    <item>
      <title>Re: job processor context.connection is invalid</title>
      <link>https://forums.autodesk.com/t5/vault-customization-forum/job-processor-context-connection-is-invalid/m-p/5097644#M10382</link>
      <description>&lt;P&gt;Well, that looks like fun.&amp;nbsp; Thanks for the heads up.&amp;nbsp; I'll make sure i have that installed.&amp;nbsp; Props for including the download link.&lt;/P&gt;</description>
      <pubDate>Mon, 16 Jun 2014 15:32:03 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vault-customization-forum/job-processor-context-connection-is-invalid/m-p/5097644#M10382</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2014-06-16T15:32:03Z</dc:date>
    </item>
    <item>
      <title>Re: job processor context.connection is invalid</title>
      <link>https://forums.autodesk.com/t5/vault-customization-forum/job-processor-context-connection-is-invalid/m-p/5287147#M10383</link>
      <description>&lt;PRE&gt;I had the same issue, here is my code that worked for me.&lt;BR /&gt;&lt;BR /&gt;It downloads a file when the status changes to relased. this is setup with the lifecycleEventEditor.&lt;BR /&gt;&lt;BR /&gt;First of all from what i was reading in the sdk you don't need to login anymore when using the jobprocessor. Second you can't get the file master id passed from a job - but you can get the fileId. as fare as i know.&lt;BR /&gt;&lt;BR /&gt;this code downloads a file without selecting it in the vault explorer.&lt;BR /&gt;&lt;BR /&gt;Public Function Execute(context As ACJE.IJobProcessorServices, job As ACJE.IJob) As ACJE.JobOutcome Implements ACJE.IJobHandler.Execute

            'Dim fileMasterId As Long = Convert.ToInt64(job.Params("FileMasterId"))

            Dim MyfileId As Long = Convert.ToInt64(job.Params("FileId"))

            Try

                Dim file As ACW.File = context.Connection.WebServiceManager.DocumentService.GetFileById(MyfileId)

                'Dim file As ACW.File = context.Connection.WebServiceManager.DocumentService.GetLatestFileByMasterId(fileMasterId)

                Dim fileIter As VDF.Vault.Currency.Entities.FileIteration = context.Connection.FileManager.GetFilesByIterationIds(New Long() {file.Id}).First().Value

                Publish(fileIter, context.Connection)

                Return ACJE.JobOutcome.Success

            Catch

                Return ACJE.JobOutcome.Failure

            End Try

        End Function&lt;BR /&gt;&lt;BR /&gt;regards kent boettger&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Sat, 20 Sep 2014 12:39:03 GMT</pubDate>
      <guid>https://forums.autodesk.com/t5/vault-customization-forum/job-processor-context-connection-is-invalid/m-p/5287147#M10383</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2014-09-20T12:39:03Z</dc:date>
    </item>
  </channel>
</rss>

