SOAP::Liteの相互運用性について

SOAP::LiteはSOAP文書がRPC/Encodedでないと駄目なようです(回避方法はあるようです。後述)。
.NETのデフォルトがDocument/Literalなので、デフォルトではSOAP::Liteから.NETで作成したWebサービスは呼び出せません。
Webサービス(asmx)のクラスの属性を修正することによって、RPC/Encodedに変更は可能です(System.Web.Services.Protocols.SoapRpcService() を設定することにより、RPC/Encodedになる)。
Document/Literal版とRPC/Encoded版の2つのWSDLを用意する方が親切かもしれません。
ちなみにWebサービス作成時、
.NETのデフォルトはDocument/Literal
JavaのデフォルトはRPC/Encoded
です。
クライアント側はどちらもコード上意識しなくて対応しています。

もうちょっと調べてみると、SOAP::LiteでもDocument/Literal
SOAP文書が作れるようです。以下参照 。でもちょっと面倒くさそうです。
How to Call a .NET-based Web Service Using the SOAP::Lite Perl Library

●参考
Document/Literal or RPC/Encoded

Basic Profile Version 1.0a

Debugging Interop Problems