Salve a tutti,
sto effettuando qualche sperimentazione sul CMDBuild scaricato qualche giorno fa, per valutarne la fruibilità in ottica bancaria.
L'ho installato senza problemi ma adesso che vorrei utilizzarlo via WS sto perdendo un po' di tempo.
Nel dettaglio di seguito le azioni svolte
- ho provato ad utilizzare direttamente il client (cmdbuild-ws-client-2.3.0) ma la parte di autenticazione (il WebServiceStub di alcuni esempi) non l'ho trovato;
- allora ho generato tutto con cxf ma lo stub non contiene nel costruttore il ConfigurationContext
- è possibile avere un esempio completo con utilizzo del client e con i riferimenti su come recuperare
- tutte le classi anche per l'autenticazione magari con Metro (visto che abbiamo avuto problemi nell'utilizzare rampart ed axis2 con was8.5 (incompatibilità in quanto anche il was utilizza axis2))
- il file policy.xml per rampart
// TODO Auto-generated method stub
try {
ConfigurationContext configContext = ConfigurationContextFactory.createConfigurationContextFromFileSystem("C:/RepoProva/", null);
WebservicesStub stub = new WebservicesStub(configContext);
stub._getServiceClient().engageModule("rampart-1.4");
StAXOMBuilder builder = new StAXOMBuilder("C:/RepoProva/conf/policy.xml");
org.apache.axis2.client.Options options = stub._getServiceClient().getOptions();
options.setUserName("admin");
options.setPassword("admin");
Policy policy = PolicyEngine.getPolicy(builder.getDocumentElement());
options.setProperty(RampartMessageData.KEY_RAMPART_POLICY, policy);
GetCardList list = new GetCardList();
list.setClassName("Stampante");
GetCardListResponse response = stub.getCardList(list);
Card[] card = response.get_return();
System.out.println(card[0].getDescription());
} catch (AxisFault e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (XMLStreamException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (SOAPExceptionException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}