Webmethods JavaService Mapping Issues

Iam experiencing the following problems while doing data mapping in javaservice.

-Iam trying to map the pipline input document data to “Typed List” and then try to put that list into “objectlist” output type.When I try to execute this seervice it executed fine without any issues.But the output “objectlist” returns “null”.
Is any one have any ideas?

Here is the Code:-

// pipeline
IDataCursor pipelineCursor = pipeline.getCursor();
List siebel_contact_list = new ArrayList();
// xsdLocal1:Contact
IData xsdLocal1_Contact = IDataUtil.getIDataArray( pipelineCursor, “xsdLocal1:Contact” );
if ( xsdLocal1_Contact != null)
{
for ( int i = 0; i < xsdLocal1_Contact.length; i++ )
{
Contact ct = new Contact();
IDataCursor xsdLocal1_ContactCursor = xsdLocal1_Contact[i].getCursor();
try{
ct.setLastUpdated(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:LastUpdated” ));
ct.setAccountName(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:AccountName” ));
ct.setAccountId(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:AccountId” ));
ct.setContactId(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:ContactId” ));
ct.setIntegrationId(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:IntegrationId” ));
ct.setCellularPhone(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:CellularPhone” ));
ct.setContactEmail(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:ContactEmail” ));
ct.setWorkFax(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:WorkFax” ));
ct.setContactFirstName(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:ContactFirstName” ));
ct.setContactLastName(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:ContactLastName” ));
ct.setMrMrs(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:MrMrs” ));
ct.setMiddleName(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:MiddleName” ));
ct.setWorkPhone(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:WorkPhone” ));
ct.setBAdministrative_General(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bAdministrative_General” ));
ct.setBAffordable_General(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bAffordable_General” ));
ct.setBOther_Senior_Executive(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bOther_Senior_Executive” ));
ct.setBPE_Additional_Contact(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bPE_Additional_Contact” ));
ct.setBPRMarketing_General(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bPRMarketing_General” ));
ct.setBQC_General(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bQC_General” ));
ct.setBTechnology_General(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bTechnology_General” ));
ct.setBUnderwriting_General(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bUnderwriting_General” ));
ct.setBZList(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bZList” ));
ct.setBServicer_Advis_Board(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bServicer_Advis_Board” ));
ct.setBAdvis_Comm_on_Investor_Reporting(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bAdvis_Comm_on_Investor_Reporting” ));
ct.setBDefault_Advisory_Group(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bDefault_Advisory_Group” ));
ct.setBCCO(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bCCO” ));
ct.setBMtg_Ops_Advisory_Comm(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bMtg_Ops_Advisory_Comm” ));
ct.setBServicer_Advisory_Board(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bServicer_Advisory_Board” ));
ct.setBAdvis_Comm_on_Doc_Custody(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bAdvis_Comm_on_Doc_Custody” ));
ct.setBCommunity(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bCommunity” ));
ct.setBLoan_Prospector(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bLoan_Prospector” ));
ct.setBLender(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bLender” ));
ct.setBCFO(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bCFO” ));
ct.setBCEO(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bCEO” ));
ct.setBContract_Contact(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bContract_Contact” ));
ct.setBCRA_Officer(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bCRA_Officer” ));
ct.setBCredit_General(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bCredit_General” ));
ct.setBFRE_Business_Primary(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bFRE_Business_Primary” ));
ct.setBOther(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:bOther” ));
ct.setPhHome_Office_Number(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:phHome_Office_Number” ));
ct.setPlSelling_System(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:plSelling_System” ));
ct.setPlQC(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:plQC” ));
ct.setPlTechnology(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:plTechnology” ));
ct.setPlOperations_Delivery(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:plOperations_Delivery” ));
ct.setPlProduction(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:plProduction” ));
ct.setPlSecondary(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:plSecondary” ));
ct.setPlServicing(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:plServicing” ));
ct.setStNickname(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:stNickname” ));
ct.setStSuffix(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:stSuffix” ));
ct.setDegree(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:Degree” ));
ct.setMaritalStatus(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:MaritalStatus” ));
ct.setLifeEvent(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:LifeEvent” ));
ct.setAlternateCity(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:AlternateCity” ));
ct.setAlternateCountry(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:AlternateCountry” ));
ct.setAlternateZipCode(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:AlternateZipCode” ));
ct.setAlternateAddress1(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:AlternateAddress1” ));
ct.setAlternateAddress2(IDataUtil.getString( xsdLocal1_ContactCursor, “xsdLocal1:AlternateAddress2” ));
}
finally{
if(xsdLocal1_ContactCursor != null) xsdLocal1_ContactCursor.destroy();
}
siebel_contact_list.add(ct);

}
}
IDataUtil.put( pipelineCursor, “siebel_contact_list”,siebel_contact_list);
IDataUtil.put( pipelineCursor, “contactListSize”, siebel_contact_list.size() );
pipelineCursor.destroy();

Regards
Rama

It is null because ArrayList is an object, not an object list. If you want the output to be a list of contact objects then you’ll need do siebel_contact_list.toArray(). Be sure to use the right toArray method that reflects the proper runtime type if you need that later.

If you’re simply passing this on to another Java service later, then you can keep it as an ArrayList (an object). Just make the output of this service match what the input of the later service needs to be.