IItem item = null; ISection section = null;
final ISuportePersistente persistentSuport = SuportePersistenteOJB.getInstance(); final IPersistentSection persistentSection = persistentSuport.getIPersistentSection(); final IPersistentItem persistentItem = persistentSuport.getIPersistentItem();
    public Boolean run(Integer infoExecutionCourseCode, Integer sectionCode, InfoItem infoItem)            throws FenixServiceException {        IItem item = null;        ISection section = null;        try {            ISuportePersistente persistentSuport = SuportePersistenteOJB.getInstance();            IPersistentSection persistentSection = persistentSuport.getIPersistentSection();            IPersistentItem persistentItem = persistentSuport.getIPersistentItem();            section = (ISection) persistentSection.readByOID(Section.class, sectionCode);            infoItem.setInfoSection(Cloner.copyISection2InfoSection(section));            item = Cloner.copyInfoItem2IItem(infoItem);            persistentItem.simpleLockWrite(item);            Integer itemOrder = new Integer(organizeExistingItemsOrder(section, infoItem.getItemOrder()                    .intValue()));            item.setItemOrder(itemOrder);        } catch (ExistingPersistentException e) {            throw new ExistingServiceException(e);        } catch (ExcepcaoPersistencia excepcaoPersistencia) {            throw new FenixServiceException(excepcaoPersistencia);        }        return new Boolean(true);    }