Forum Replies Created
-
AuthorPosts
-
Sorry, but what do you mean by “Stephen has locked the discussion of R2 to allow Richard to have the last word”?
All forum topics are open and free for anyone to post comments.
You can send the message directly to the supplier, but it is only as secure as the transport mechanism.
Classical form was to dial into a VAN via modem and transfer by x, y or z modem. Assuming the receiver was also dialing into the VAN to receive, the transfer was secure because it was a point to point transfer each party, thus never being in the reach of the internet.
From a desire to bypass the VAN fees and transfer point to point via the internet, AS2 has evolved. AS2 uses https to ensure point to point encryption.
Some still prefer the value added features of the VAN and use AS2 to transfer to the VAN.
An additional mechanism I have used is Secure FTP.
You could conceivably roll your own transfer mechanism via https, but with COTS products being available, it would make less sense to do this.
The leading COTS product is Cyclone; Covast has an AS2 adaptor; 2006 R2 has an AS2 adaptor, and there are others still.
Take my advice with a grain of salt, since Richard Seroter called me a weak architect and Stephen has locked the discussion of R2 to allow Richard to have the last word. So I'll let those experts expound with their wisdom from their vast experience in the matter.
-weak architect
Hi Greg,
For the above method to providing registry:getvalue(), do we need to add a reference to any dll. I am getting an error : "Constructor on type 'Microsoft.Win32.Registry' not found". I am not able to figure out the error.
I created a key named AccessKeyFolder under Regedit "MyComupter\HKEY_LOCAL_MACHINE\Software\AccessKeyFolder"
Below that Key I created 2 keys AccessKey1 and AccessKey2.
Path is "MyComputer\HKEY_LOCAL_MACHINE\Software\AccessKeyFolder\AccessKey1"
"MyComputer\HKEY_LOCAL_MACHINE\Software\AccessKeyFolder\AccessKey2"
In the xsl style sheet:
*****
Defined <xsl:variable name="keyname" select="(concat'MyComputer','\','HKEY_LOCAL_MACHINE','\','Software','\','AccessKeyFolder','\','AccessKey1')"/>
<variable1> <xsl:value-of select="Registry:GetValue($keyname,'Name',Nothing)"/></variable1>
****** 'Name' is the property along with type(REG_SZ) and default value when a key is created.
Please do let me know where I might be going wrong.
Thanks
November 27, 2006 at 1:18 AM in reply to: Maps: custom xsl code- access values from an xml document using document() #16535Your main problem will be performance for both the registry and Xml document option. Each will require a disk access to retrieve the require information for each map.
Two suggestions:
1. Create a .Net class that can be called from the map. Use the Custom Extension Xml method to access your class from the map – see previous post which describes how to access the Registry class in the mscorlib (Microsoft.Win32) assembly. In this class use a static array or hashtable to cache the values in memory and provide a static method to return a value.2. Create a custom pipeline component that will cache values as above. The pipeline could promote values into the message context. On the send port the XmlAssembler would demote these properties back into the message.
If you need to map the document to change the schema then option 1 would be better – you have to perform the map anyway.
If the map is only used to change node values then option 2 may be faster.
Both of these methods would cache values in a static object that would exist while the assembly is loaded. To reload the cache you will have to restart the Biztalk host application.
Hi,
Thanks for the fix. I will try it out.
Hi,
Thanks for the fix. I will try it out.
November 26, 2006 at 11:55 AM in reply to: Exception handling in biztalk server for request-response port for sql adapter #16531You probably have to cast the exception into a SOAP exception. See my sample on NACKs (http://www.biztalkgurus.com/Samples/Delivery-Notification-NAck-Orchestration.html) under BizTalk 2004.
An alternative I use sometimes is I’ll just make the call inside a .net component called from an Orchestration. That way I have better control over the errors – but I lose all the benefits of the adapter framework.
You should see an Error event in the event log when your Receive Ports are disabled.
You could write a service to monitor for this event log event or I think there is a WMI Event you can listen to.
I think you can also set the retry count at the higher interval.
Hope this helps.
Not sure on the EDI stuff, but the HTTP Adapter can be used with HTTPS as far as I know. HTTPS is a setting on the IIS Server.
Hope this helps.
I’ve always just used exception handling inside scope shapes.
Although for SQL, WS, probably Oracle Adapters the error messages are not very good. In some cases, I’ll just make the call inside a .net component called from an Orchestration. That way I have better control over the errors – but I lose all the benefits of the adapter framework.
You might want to double check to make sure you have the item promoted using a property schema and not a distinguished field.
If so, maybe try redeploying and restarting the host.
Hope this helps.
Hey Doug,
The "body" should be stored as a part, no? In my post (https://blogs.msdn.com/richardbpi/archive/2006/02/03/524484.aspx) you'll see that the text of the message itself shows up as a part. You can get this part out in an orchestration then, and load it into a message as an XmlDocument.
You can change the banner, style, primary HTML page and more. Check this out for the details … http://msdn.microsoft.com/library/default.asp?url=/library/en-us/BTS06CoreDocs/html/507bd5f0-b2a0-4d52-85f8-9d984138ca79.asp?frame=true.
November 24, 2006 at 7:41 AM in reply to: Consuming Web Method that has a strongly-typed dataset as a parameter #16522Hey there,
I know there are issues are issues with consuming datasets in web services, but found this in the Help documentation …
Using TypedDataSets as parameters to Web methods
The following is what you need to do to support using TypedDataSets as parameters to Web methods:
- Add the Web reference to a C# project and then generate the proxy.
- Create a SOAP send port and specify the proxy on the send port and choose the method.
- In the orchestration, define a late bound port and define the message types. For most cases where no property promotion or distinguished field access is needed, the type can be defined as XMLDocument. Select PassThrough pipelines with this type.
- In BizTalk Server Administration console, in the Web Service tab in the SOAP Transport Properties dialog box of the SOAP send port, specify that you want to use that proxy that you created. You will also need to specify assembly, type, and method. For more information, see SOAP Transport Properties Dialog Box, Web service Tab.
It is possible by setting min occurs to zero.
Only restriction is the Root node should not change.
Hope you find it useful.
-
AuthorPosts