Has any built a successful call to one of StrikeIron's many web
service products using OpenBD?

Our enterprise uses their USPS address validation product, which takes
a user provided address, insures it exists, normalizes it to CASS stds
and adds geographic, carrier, county, congressional data, etc... The
credentials needed to validate a wsdl request can either be passed in
the header, or via service params. This example uses the former,
trying the later didn't seem to help.

I have tried my existing version of my own code (works on CF6,1) and
the generic sample code provided by StrikeIron here:
http://www.strikeiron.com/ProductDetail.aspx?p=198 (which works on
CF8,0,1). Both will work in CF, but throw an error on OpenBD 1.1

STRIKEIRON SAMPLE CODE START
<cfscript>
        args = structNew();
        //construct the feed list
        args.addressLine1 = '1060 W Addison St';
        args.addressLine2 = '';
        args.city_state_zip = 'Chicago IL';
        args.firm = '';
        args.urbanization = '';
        args.casing = 'Upper';

        //ru
        ru = XmlNew();
        ru.LicenseInfo = XmlElemNew(ru,"http://
ws.strikeiron.com","LicenseInfo");
        ru.LicenseInfo.RegisteredUser = XmlElemNew(ru,"http://
ws.strikeiron.com","RegisteredUser");
        ru.LicenseInfo.RegisteredUser.UserID = XmlElemNew(ru,"http://
ws.strikeiron.com","UserID");
        ru.LicenseInfo.RegisteredUser.UserID.XmlText =
"[email protected]";
        ru.LicenseInfo.RegisteredUser.Password = XmlElemNew(ru,"http://
ws.strikeiron.com","Password");
        ru.LicenseInfo.RegisteredUser.Password.XmlText = "yourPassword";

        //ru.LicenseInfo.UnregisteredUser = XmlElemNew(ru,"http://
ws.strikeiron.com","UnregisteredUser");
        //ru.LicenseInfo.UnregisteredUser.EmailAddress = XmlElemNew
(ru,"http://ws.strikeiron.com","EmailAddress";);
        //ru.LicenseInfo.UnregisteredUser.EmailAddress.XmlText =
"[email protected]";

        //instantiate the object
        request.service = createObject("webservice","http://ws.strikeiron.com/
USAddressVerification4_0?WSDL");
        hdr=addSOAPRequestHeader(request.service,"http://
ws.strikeiron.com","LicenseInfo",ru.LicenseInfo);
        request.response = request.service.VerifyAddressUSA
(argumentCollection = args);
</cfscript>

<html>
<body>
<cfoutput>
<b>Inputs:</b><br>
                <b>RegisteredUser:</b> #ru.LicenseInfo.RegisteredUser.UserID# 
<br>
                <b>Address1:</b> #args.addressLine1# <br>
                <b>Address2:</b> #args.addressLine2# <br>
                <b>City State Zip:</b> #args.city_state_zip# <br><br>
<b>Results (getCounty):</b><br>
                <b>County:</b> #request.response.getCounty()#<br><br>
</cfoutput>
<cfdump var="#request.response#">
</body>
</html>
STRIKEIRON SAMPLE CODE END

The service works with valid credentials (or a validated test email)
on ColdFusion, but OpenBD throws the following General Runtime Error
(no stack trace for GRE's):

ERROR SNIP START
Type    Application
Detail  Unrecognized error code: Invalid web service operation. Cannot
locate operation VerifyAddressUSA that accepts parameters: { struct }
Tag Context     CFSCRIPT (/usr/local/tomcat/webapps/openbd/manageit/
developers/testAvs.cfm, Line=1, Column=1)
Source
28:   //instantiate the object
29:   request.service = createObject("webservice","http://
ws.strikeiron.com/USAddressVerification4_0?WSDL");
30:   hdr=addSOAPRequestHeader(request.service,"http://
ws.strikeiron.com","LicenseInfo",ru.LicenseInfo);
31:   request.response = request.service.VerifyAddressUSA
(argumentCollection = args);
32:
ERROR SNIP END

Just running these two lines on both systems will reveal some subtle
differences in the returned object:
<cfset request.service = createObject("webservice","http://
ws.strikeiron.com/USAddressVerification4_0?WSDL")>
<cfdump var="#request.service#">

This appears to be a compatibility issue, and - without a workaround -
represents a pretty significant issue in my development plans.

I'm running the J2EE version 1.1 with Apache Tomcat/6.0.14 on Ubuntu
Linux 8.04.1. The JRE is 1.6.0_10-b33. FYI: My local CF8 server is
using Java 1.6.0_04 and VM 10.0-b19

As always, your help is greatly appreciated. Contact me if you need
more. Thanks!

Alan K Holden



--~--~---------~--~----~------------~-------~--~----~
Open BlueDragon Public Mailing List
 http://groups.google.com/group/openbd?hl=en
 official site @ http://www.openbluedragon.org/

!! save a network - trim replies before posting !!
-~----------~----~----~----~------~----~------~--~---

Reply via email to