segunda-feira, 23 de março de 2009

WEB SERVICES SEGUROS EM JAVA

Estou de ferias meio periodo (problemas no software), mas para o blog não ficar muito parado estou disponibilizando minha monografia do curso de pos-graduação que fiz em java.
Segue o resumo:

No momento, a arquitetura orientada a serviços encontra-se no radar de muitos
gerentes de TI, e um numero maior de empresas passam a dedicar cada vez mais
recursos à SOA. Se a SOA é a arquitetura, os Web Services são os blocos de
construção (IBM, 2008). Desta forma, Web Services estão em destaque no mundo
da computação distribuída como uma tecnologia que resolve os problemas de
interoperabilidade dos sistemas, pois utilizam padrões abertos e independentes de
plataforma, como HTTP e XML. Porem, por possuir uma infra-estrutura publica
oferece, também, uma maior preocupação no tocante a segurança. Neste presente
trabalho pretende-se demonstrar o funcionamento de Web Services seguros
utilizando a tecnologia Java abordando conceitos da arquitetura orientada a
serviços. Através de um estudo de caso será implementado Web Services, com o
auxilio de frameworks como Apache Axis e CXF, utilizando os padrões de protocolos
adotados pela industria demonstrando a especificação WS-Security.

download

terça-feira, 3 de março de 2009

Call Procedure Oracle with Java and Param Out

Segue um exemplo de como executar uma procedure com parametro de entrada e saida no oracle.


public static void main(String[] args) {
try {

Class.forName("oracle.jdbc.driver.OracleDriver");
String url = "jdbc:oracle:thin:@localhost:1521:xe";
Connection con = DriverManager.getConnection(url, db_user, password);
System.out.println("Connected to database");

SimpleDateFormat simpleDateFormat = new SimpleDateFormat("dd/MM/yyyy");
Date now = new java.sql.Date(simpleDateFormat.parse("12/02/2001").getTime());

String command = "{call SALDOS(?,?)}";
CallableStatement cstmt = con.prepareCall (command);
cstmt.registerOutParameter(2, Types.DECIMAL);

cstmt.setDate(1, now);
cstmt.execute();
Double str = cstmt.getDouble(2);

cstmt.close();

System.out.println("Retorno: "+str);

} catch (Exception e) {
e.printStackTrace();
}
}


isso foi testado com oracle 9 e 10 xe
usando driver jdbc oracle
ojdb14.jar
ojdb14_g.jar