Criação de um data provider

Top  Previous  Next

Implementação de um data provider para que o source seja populado através de uma fonte externa.

package corporate.hoteisadmin4;

import java.io.File;

import org.w3c.dom.Document;

import org.w3c.dom.Node;

import lumis.doui.source.*;

import lumis.portal.PortalException;

import lumis.util.ITransaction;

import lumis.util.XmlUtil;

import lumis.portal.authentication.SessionConfig;

public class UFDataProvider implements IDataProvider<TabularSource<?>>

{

 public void loadData(SessionConfig sessionConfig, TabularSource<?> source, ITransaction transaction) throws PortalException

 {

  File ufs = new File("c:\\ufs.xml");

  Document ufsDom = XmlUtil.getDocument(ufs);

 

  TabularData tabularData = source.getData();

 

  Node[] ufNodes = XmlUtil.selectNodes("ufs/uf", ufsDom);

  

  for(Node ufNode : ufNodes)

  {

   ISourceData newRow = tabularData.addRow();

  

   String id = XmlUtil.readAttributeString("id", ufNode);

  

   newRow.put("uf", id);

  }

 }

}

O arquivo XML, referenciado no data provider, que contém informações de UF s que deve estar localizado, por exemplo, em c:/ufs.xml:
 

<?xml version="1.0" encoding="UTF-8" ?>

<ufs>

       <uf id="RJ" />

       <uf id="SP" />

       <uf id="MG" />

</ufs>


Lumis Portal 6.2.0.120405
Copyright © 2006–2012 Lumis EIP Tecnologia da Informação LTDA. Todos os direitos reservados.