Monday, April 10, 2006

BizTalk 2006 - Edi Adapter

Tenho estado a explorar o Base EDI Adapter incluído no BizTalk 2006 (que parece estar igual ao da versão anterior), e aproveito para chamar a atenção para alguns pormenores que podem acontecer quando se faz a sample incluída (Getting Started with EDI).


1) Quando se faz a validação do schema (X124010850SchemaWithoutCodeSets.xsd), vão aparecer umas boas dezenas de warnings de validação, relativas a tipos de atributos (date e time). Estes warnings podem ser ignorados.


2) Se, durante o teste à solução, acontecer um erro como este no event log:


Error encountered: ERROR (46), interchangenr 10001 :
The source document in this mapping is not recognized. Check the mapping.
(msgnr:1 segnr:1)(line:4 pos:7 filepos:460)source format: [5 00401 ] source
document: [850 0040101 X ]
source format: [5 00401 ] source document: [850 0040101 X ]


O motivo prende-se possivelmente com a seguinte curiosidade descrita na documentação (em Configuring the Base EDI Adapter): "If the EDI service is running as a local machine account, you must log on and develop using a local machine account."


Se, como eu, tiverem o BizTalk configurado com uma conta de serviço local, mas estiverem logados no PC com uma conta de domínio, vão ter este problema.


Uma forma de tirar teimas é tentar correr a tool "compief" no comando de linha. Se o resultado for:


Failed to trigger compile-thread on the server.
(-2039) <Description for error (-2039) cannot be found. Please refer to the Trouble Shooting Guide for this description>
Error=80090304


Este erro significa "THE LOCAL SECURITY AUTHORITY CANNOT BE CONTACTED", e indica que se deve estar perante esta situação.


Podia ter evitado isto se tivesse lido a documentação com mais atenção, mas parece-me um erro fácil de cometer. Ainda não sei se é possível contornar a situação, mas para não ter de desenvolver com um utilizador de uma conta de serviço local fiz o seguinte:


- crei um script que faz o xsd2edi, seguido do compief, e que executo com as credenciais do utilizador local. Todo o desenvolvimento e até deploy é feito com meu utilizador normal de domínio (a dica está aqui).


Se tiverem o infortúnio de usar schemas EDIFACT, o "site oficial" da ONU está aqui.


[Cross-Posted de http://www.arquitecturadesoftware.org/blogs/joaomartins]

Friday, April 7, 2006

BizTalk 2006 - Invocação de Web Services

Uma das novidades do BizTalk 2006 tem a ver com a invocação de Web Services externos.
Quem conhece o 2004 sabe que não é possível invocar directamente Web Services que tenham serviços que usem arrays. A solução clássica para este problema consiste em criar o proxy em .Net normal, com "Add Web Reference", e depois usar a assembly resultante para efectuar a invocação, em Expression Shapes das orquestrações. Continuamos, no entanto, a não conseguir fazer isto em messaging ports.
O BizTalk 2006, além de já ter suporte para Arrays em Web Services, permite ainda especificar um assembly onde esteja implementado um proxy, na configuração do SOAP Transport, permitindo assim não apenas um grau de configuração elevado, como suporte integral para qualquer Web Service (que o .Net compreenda), tanto na orquestração como em messaging.
A figura abaixo indica onde se pode fazer esta configuração.


Soap Transport Properties

[Cross-Posted de http://www.arquitecturadesoftware.org/blogs/joaomartins]

Monday, April 3, 2006

Exame 74-135: Developing E-Business Solutions Using Microsoft BizTalk Server 2004 - done

O 74-135 é um "Microsoft partner competency exam", que conta para a certificação de competências de parceiros, mas não para o programa Microsoft Certified Professional. Depois de algum tempo a adiar, fui fazê-lo hoje à Galileu, com sucesso. :-)


Como material de estudo, recomendo vivamente o livro do Woodgate (BizTalk 2004 Unleashed), bem como o exame de teste recém lançado pela TestKing, que não é caro e vale a pena. Li também vários artigos de BizTalk no CodeProject, simples mas interessantes, e partes extensas da documentação.


O exame é bastante complexo, e se aborda muito as áreas mais usadas no produto (orquestração e messaging), também inclui questões sobre instalação e configuração, adapters, BAS, BAM, e até HWS.


 


[Cross-Posted de http://www.arquitecturadesoftware.org/blogs/joaomartins]