------------------------------------------------------------------------------------
BizTalk Development Errors: simple jargon-free problem and solution approach
P: Visual Studio 2010 will not load BizTalk projects and BizTalk resources (like .btm BizTalk mapper files, .odx BizTalk orhcestration files etc)
S: You most likely installed Visual Studio after installing BizTalk. go to the 'Help --> About Microsoft Visual Studio' menu of Visual Studio and make sure that Microsoft BizTalk Server 2010 is in the list of installed products. If it is not, modify your BizTalk Server installation through the control panel (programs and features tab) and add the Developer Tools and SDK
P: When working with BizUnit or other xml-based tools, you get an error of the sort: the tag 'xxxx' does not exist in XML namespace 'clr-namespace:xxxx;assembly=xxxx'
S: First check the references in your project and make sure they are all fine. Secondly, make sure the reference to the namespace in xml is fully qualified (i.e. the full assembly name is used)
P: sqlservr.exe is using too much memory resources and affecting deployment of your biztalk applications due to out of memory errors
S: Fix SQL Server’s memory allocation. Go to SQL Server Management Studio, Right-Click on the Server, Properties à Memory. Set the maximum server memory (in MB) filed to a value your system can deal with, like 200MB for example
P: you get an ‘errors exist for one or more children’ error message when you’re trying to build a BizTalk orchestration project
P: You get persistent ‘Schema referenced by Map "*****" has been deleted. The local, cached version of the BizTalk Server group configuration is out of date. You must refresh the BizTalk Server group configuration’ errors. Your list of BizTalk Applications isn’t showing in the Group. You try refreshing the BizTalk Group and it doesn’t solve the problem. You also try restarting host instance services and the [problem persists
S: See first part of the next solution below
P: When trying to use the baselangs.Any schema type for a map, you get 'Schema referenced by Map <mapname> has been deleted' error. Your BizTalk applications stop loading up in the Administration console.
S: If you’re only interested in getting your applications back in Administration console, open SQLserver, open the BizTalkMgmtDb, and open the dbo.bt_MapSepc table. Find the entry whose input (indoc_docspec_name) and output (outdoc_docspec_name) schemas match your problem map and delete if from the table. This will remove the problematic map and allow the applications to load in BizTalk Administration Console.
However, if you’re hell bent on using your map and you wish to fix the problem, follow these steps. Delete your problematic application. Refresh the BizTalk Group. Add the Microsoft.XLANGS.BaseTypes dll to your BizTalk Group by adding it as an assembly to BizTalk Application 1. (Richt-click on BizTalk Application 1 à Add à BizTalk Assemblies à Browse to your BTS installation folder and pick the dll. Click on OK. Re-deploy your application
P: When trying to deploy you BizTalk solution, you get error: Parameter name: StrDBName:
S: The problem would usually have to do with the deployment properties in the btproj file (Properties -> Deployment -> Server) trying to deploy to a server to which you do not have access. It is probably set to another server other than your local sql server instance. Either change the server name to your local sql server instance, or if you are trying to deploy to a remote server, make sure the domain name is added to the server name (e.g. Sql server Devbbl02 on Domain btsdev.dev would be entered as Devbbl02.btsdev.dev)
P: when an xml message passes through a port, you get error: "An error occurred when parsing the incoming document: "Invalid Character in the given encoding"
S: The problem would usually have to do with improper or absent declaration in the xml file. BizTalk uses UTF-8 encoding by default in the disassemble and assemble stages of the receive and send pipelines. If as an example, a file in ANSI format containing foreign charcters (basically non-English characters - excuse my partialism) is passed through the receive port using the XMLReceive pipeline without the declaration (i.e. for the default U.S ANSI charset it would be "<?xml version="1.0" encoding="windows-1252"?> the pipeline simply would not be sure how to convert the byte representation of the foreign charcters (since different encodings use different byte representations for foreign characters). the pipeline would therefore not allow the xml file through and the error above would be thrown.
The easiest solution (which of course would almost never happen in the integration world) would be to have the declaration added to the xml file form source
Another solution is to use a custom pipeline component such as the one on this link. You would add it to the decode stage of the receive pipeline to let bizTalk know what encoding it will be dealing with. You then use that custom pipeline in the receive location
Finally, you could write a custom pipeline component to convert from ANSI to UTF-8 and use it in a similar way to the custom pipeline described above
P: after creating a Custom BizTalk Pipeline Component, the component does not show up in Visual Studio
S: To use a custom pipeline component in the Visual Studio design environment, you need three main steps. (a) write and build your component (b) GAC (Add the dll to the assembly) your pipeline component dll (c) add the component dll to the pipeline components directory in your BizTalk installation directory (typically c:\program files(or program files (x86) for 64-bit systems)\BizTalk Server 20_ _ (depending on your BTS version)\. After you have carried out all these steps right-click on the Visual Studio toolbox --> Choose Items --> BizTalk Pipeline Components.
If you do not see the components at this stage, close all open instances of Visual Studio, re-open Visual Studio, right-click on the Visual Stusio toolbox --> Choose Items --> BizTalk Pipeline Components. You should now see the component.
P: after creating a BizTalk Mapper Functoid, the functoid does not show up in Visual Studio
S: To use a custom mapper functoid in the Visual Studio design environment, you need three main steps. (a) write and build your functoid (b) GAC (Add the dll to the assembly) your functoid dll (c) add the functoid dll to the 'developer tools\mapper extensions\' directory in your BizTalk installation directory (typically c:\program files(or program files (x86) for 64-bit systems)\BizTalk Server 20_ _ (depending on your BTS version).
After you have carried out all these steps right-click on the Visual Studio toolbox --> Choose Items --> BizTalk Mapper Functoids. If you do not see the components at this stage, close all open instances of Visual Studio, re-open Visual Studio, right-click on the Visual Stusio toolbox --> Choose Items --> BizTalk Mapper Functoids. You should now see the functoid.