From: Daniel M. <dm...@tu...> - 2002-03-18 15:23:02
|
Sumit, Which version of the RTK are you using... I'm curious about line 135 of EPPContactUpdate.java. Interesting how the same source file give a code line in one instance and a "Compile Code" message in another. I don't think I see anything wrong with the code, so it's like that there's some missing null checks in the RTK. Dan Sumit Raja wrote: > I am getting the following exception when I attempt to alter only the > status of a contact. > > java.lang.NullPointerException > at > com.tucows.oxrs.epp.rtk.xml.EPPContactUpdate.getAddRemoveElement(Compiled > Code) > at > com.tucows.oxrs.epp.rtk.xml.EPPContactUpdate.toXML(EPPContactUpdate.java:135) > > > Moy code builds an addremove element from an ArrayList based on if the > size of the arraylist is greater than 0 or not. > > See the snippet below: > > contact_update_request.m_add=null; > contact_update_request.m_remove=null; > log.debug("Building command"); > . > . > . > epp_ContactUpdateAddRemove status_add = new > epp_ContactUpdateAddRemove(); > epp_ContactUpdateAddRemove status_rem = new > epp_ContactUpdateAddRemove(); > ArrayList add = new ArrayList(); > ArrayList rem = new ArrayList(); > if(propExists(Config.OBJECT_STATUS)) > { > log.debug("Updating statuses"); > Status list[] = > (Status[])getDataObject(Config.OBJECT_STATUS,true); > for(int i=0; i<list.length;i++) > { > Status next = list[i]; > String nextType = next.getType(); > epp_ContactStatusType statType = > EPPContactBase.contactStatusFromString(nextType); > > epp_ContactStatus stat = new epp_ContactStatus(); > stat.setType(statType); > if(next.getMessage()!=null) > stat.setValue(next.getMessage()); > if(!next.isAdd()) > { > rem.add(stat); > log.debug("Removed Status: "+next.toString()); > } > else > { > add.add(stat); > log.debug("Added Status: "+next.toString()); > } > } > if(add.size()>0) > { > status_add.m_status = (epp_ContactStatus[])add.toArray(new > epp_ContactStatus[add.size()]); > contact_update_request.m_add=status_add; > } > if(rem.size()>0) > { > status_rem.m_status = (epp_ContactStatus[])rem.toArray(new > epp_ContactStatus[rem.size()]); > contact_update_request.m_remove=status_rem; > } > } > log.debug("Check/Update command creation complete. Sending to > server"); > EPPContactUpdate contact_update = new EPPContactUpdate(); > contact_update.setRequestData(contact_update_request); > mSession.sendWithException(contact_update); > > I can figure out what exactly is wrong. I have tried to set the > addremove element irrespective of the size of the arraylist but this > fails as well. > > Any help much appr! > > Cheers > > Sumit > > > _______________________________________________ > Epp-rtk-devel mailing list > Epp...@li... > https://lists.sourceforge.net/lists/listinfo/epp-rtk-devel |