Departamento de Engenharia Informática Sistemas Distribuídos. Java Web Services Cookbook
|
|
|
- Vitória Maranhão Sacramento
- 10 Há anos
- Visualizações:
Transcrição
1 Departamento de Engenharia Informática Sistemas Distribuídos Java Web Services Cookbook 12 de Maio de 2009
2 Índice Nota prévia... 3 Criar um Web Service... 4 Estratégia... 4 Passos básicos... 4 Variantes... 8 Diagnóstico de erros... 8 Usar Eclipse... 8 Activar um JAX-WS Handler no servidor...10 Registar o Web Service no UDDI...10 Criar um servidor com dois endpoints...12 Criar um cliente de Web Service...15 Estratégia...15 Passos básicos...15 Variantes...17 Diagnóstico de erros...17 Usar Eclipse...17 Activar um JAX-WS Handler no cliente...18 Obter a localização do Web Service a partir do UDDI...19 Criar um cliente de dois Web Services
3 Nota prévia Este livro de "receitas" descreve procedimentos para o desenvolvimento de Web Services. Não explica nem pretende explicar todos os conceitos envolvidos, que deverão ser estudados e compreendidos em pormenor antes da utilização deste guia. A infra-estrutura de software que se assume é: Java 5, JWSDP 2.0+, Ant e ImportAnt São também apresentadas variantes que usam o Eclipse Java Enterprise Europa+. A estrutura base de directorias dos projectos (ImportAnt) é a seguinte: project build.xml Project Ant build file: - import modules - define properties - define classpaths - define build targets build.properties Property overrides config configuration files lib library (jar) files src source code java Java classes web Web resources (JSP, HTML,...) xml WSDL, XSD and other XML sources etc additional files build temporary build directory dist temporary application or library distribution directory 3
4 Criar um Web Service Estratégia Um Web Service é uma aplicação servidora que responde a pedidos de clientes formatados em XML e transportados em mensagens SOAP. O procedimento consiste em criar uma estrutura de directórios e ficheiros para o projecto, definir o Web Service através de WSDL e XSD, gerar código Java para tratamento da comunicação e da conversão de dados e, finalmente, escrever o restante código. Aqui o Web Service é genericamente designado como MyWS. Este e outros nomes relacionados deverão ser ajustados caso a caso, de acordo com o pretendido. Passos básicos 1. Criar projecto Ant a. Criar estrutura de directorias e ficheiros para o projecto. import-ant my-ws config resources jax-ws-server web.xml sun-jaxws.xml server-custom-binding.xml src java xml web.xml <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" " <web-app> <description>jax-ws <listener> <listenerclass>com.sun.xml.ws.transport.http.servlet.wsservletcontextlistener</listenerclass> </listener> <servlet> <servlet-name>jax-ws-servlet</servlet-name> <display-name>jax-ws servlet</display-name> <description>jax-ws endpoint</description> <servletclass>com.sun.xml.ws.transport.http.servlet.wsservlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>jax-ws-servlet</servlet-name> <url-pattern>/endpoint</url-pattern> </servlet-mapping> <session-config> <session-timeout>60</session-timeout> 4
5 </session-config> </web-app> sun-jaxws.xml <?xml version="1.0" encoding="utf-8"?> <endpoints xmlns=" version="2.0"> <endpoint name="endpoint" url-pattern="/endpoint" /> </endpoints> server-custom-binding.xml <?xml version="1.0" encoding="utf-8" standalone="yes"?> <bindings xmlns:xsd=" xmlns:jaxb=" xmlns:wsdl=" xmlns=" <bindings node="wsdl:definitions"> </bindings> </bindings> Todos estes ficheiros contêm itens de substituição que serão substituídos pelo ImportAnt durante o processo de construção. Deste modo, estes ficheiros permanecem sempre iguais e o que muda é o build.xml. b. Criar ficheiro de construção build.xml: <project name="myws" default="build" basedir="."> <property name="import-ant" value="../import-ant" /> <!-- IMPORTS --> <import file="${import-ant/core.xml" /> <import file="${import-ant/tomcat.xml" /> <import file="${import-ant/jwsdp.xml" /> <import file="${import-ant/jax-ws-server.xml" /> <!-- Web Service definitions --> <property name="jax-ws-server.wsdl.file-name" value="" /> <property name="jax-ws-server.wsdl.namespace" value="" /> <property name="jax-ws-server.wsdl.service-name" value="" /> <property name="jax-ws-server.wsdl.port-name" value="" /> <property name="jax-ws-server.ties.package" value="" /> <property name="jax-ws-server.ties.interface.simple-name" value="" /> <property name="jax-ws-server.impl.package" value="" /> <property name="jax-ws-server.impl.class.simple-name" value="" /> <!-- CLASSPATHS --> <path id="compile.classpath"> <pathelement location="${build.classes.rel-dir" /> <path refid="project.lib.path" /> <path refid="jwsdp.jars.path" /> </path> 5
6 <!-- TARGETS --> <target name="build" depends="config,build-jax-ws-server" description="builds the project"> </project> c. Criar directorias temporárias build e dist e confirmar que sintaxe do build.xml está correcta: $ ant init 2. Definir contrato do serviço a. Criar ficheiro MyWS.wsdl em src/xml que especifica as operações do Web Service com o vocabulário WSDL. Os tipos de dados são definidos com o vocabulário XSD. <?xml version="1.0" encoding="utf-8"?> <definitions name="myws" targetnamespace=" xmlns:tns=" xmlns=" xmlns:xsd=" xmlns:soap=" <types> <xsd:schema elementformdefault="qualified" targetnamespace=" <xsd:complextype name="myoperationtype"> <xsd:sequence> <xsd:element name="i" type="xsd:int" /> <xsd:element name="z" type="xsd:string" /> </xsd:sequence> </xsd:complextype> <xsd:element name="myoperation" type="tns:myoperationtype" /> /> <xsd:complextype name="myoperationresponsetype"> <xsd:sequence> </xsd:sequence> </xsd:complextype> <xsd:element name="myoperationresponse" type="tns:myoperationresponsetype" <message name="myoperation"> <part name="parameters" element="tns:myoperation" /> </message> <message name="myoperationresponse"> <part name="result" element="tns:myoperationresponse" /> </message> <porttype name="myporttype"> <operation name="myoperation"> <input message="tns:myoperation" name="myoperation"/> <output message="tns:myoperationresponse" name="myoperationresponse"/> </operation> </porttype> <binding name="mybinding" type="tns:myporttype"> <soap:binding transport=" style="document" /> <operation name="myoperation"> <soap:operation soapaction="" /> <input> 6
7 </definitions> <soap:body use="literal" /> </input> <output> <soap:body use="literal" /> </output> </operation> </operation> </binding> <service name="myservice"> <port name="myport" binding="tns:mybinding"> <soap:address location="replace_with_actual_url" /> </port> </service> b. Definir nomes seguindo a convenção dos sufixos:...service,...port,...porttype,...binding, Criar serviço a. Gerar ties i. Definir valores de propriedades de Web Service no build.xml de acordo com os valores definidos no WSDL <!-- Web Service definitions --> <property name="jax-ws-server.wsdl.file-name" value="myws.wsdl" /> <property name="jax-ws-server.wsdl.namespace" value=" /> <property name="jax-ws-server.wsdl.service-name" value="myservice" /> <property name="jax-ws-server.wsdl.port-name" value="myport" /> <property name="jax-ws-server.ties.package" value="my.ws.ties" /> <property name="jax-ws-server.ties.interface.simple-name" value="myporttype" /> <property name="jax-ws-server.impl.package" value="my.ws" /> <property name="jax-ws-server.impl.class.simple-name" value="myserviceimpl" /> ii. Executar wsimport $ ant build-jax-ws-server iii. Consultar ties gerados pelo wsimport em build/jax-wsserver/wsimport, em particular MyService.java e MyPortType.java 7
8 b. Criar implementação do serviço i. Criar classe em src/java/my/ws, implementando todos os métodos definidos em MyPortType package my.ws; import (endpointinterface="my.ws.ties.myporttype") public class MyServiceImpl implements MyPortType { public void myoperation(int i, String s) { return; c. Construir Web Service e instalar $ catalina start $ ant deploy d. Confirmar instalação correcta Variantes Diagnóstico de erros Consultar ficheiro de log: %CATALINA_HOME%\logs\launcher.server.log $ ant rebuild $ ant quick-redeploy O ficheiro de log pode ser consultado continuamente com o comando tail: $ tail -f %CATALINA_HOME%\logs\launcher.server.log Usar Eclipse (Antes do passo 2) Iniciar o Eclipse e criar novo projecto File, New, Project, Java Project, Project name: MyWS Create project from existing source, Next Source, Source folder, src/java, Default output folder: build/eclipse Libraries, Add library, User library: jwsdp-essd-2008, Finish Add class folder: build/classes, Finish O conjunto de bibliotecas (user library) jwsdp-essd-2008 pode ser importado a partir do ficheiro contido na directoria %JWSDP_HOME%\eclipse. 8
9 Configurar Ant Windows, Show View, Ant View build.xml ~drag-and-drop~> Ant View Hide internal targets (Apoio ao passo 2, a) Criar WSDL New, Other..., XML, WSDL Next Parent folder: src/xml File name: MyWS.wsdl, Next Target namespace: Namespace prefix: tns Create WSDL Skeleton Protocol: SOAP SOAP Binding options: document literal Finish Indentar XML WSDL, View Source Select All Text Source, Format, Document (Depois do passo 3, a, ii) Refrescar Eclipse Project, Refresh (Apoio ao passo 3, b, i) Criar classe File, New, Class package: my.ws name: MyServiceImpl superclass: java.lang.object interfaces: my.ws.ties.myporttype inherit abstract methods generate comments Anotar (endpointinterface="my.ws.ties.myporttype") Escrever código Java dos métodos. 9
10 Activar um JAX-WS Handler no servidor Acrescentar o seguinte target ao build.xml. <target name="-replace-jax-ws-server-custom-tokens(dir)"> <replace dir="${dir" token="@jax-ws-server.handler-chains@"> <replacevalue><![cdata[ <jws:handler-chains xmlns:jws=" <jws:handler-chain> <jws:handler> <jws:handlerclass>my.ws.handler.myhandler</jws:handler-class> </jws:handler> </jws:handler-chain> </jws:handler-chains> ]]></replacevalue> </replace> A classe my.ws.handler.myhandler deverá existir e ser um JAX-WS Handler. Registar o Web Service no UDDI Obter uma biblioteca com as classes step.framework.ws.registry.* e colocar numa das directorias lib do projecto: lib my-ws lib Criar e preencher ficheiros de configuração de registo Registry.properties (dados do servidor UDDI) e Registration.properties (dados de registo). my-ws config ws-registry Registry.properties Registration.properties Registry.properties # # Registry # [email protected]@ [email protected]@ [email protected]@ #locale= optionoutputmessages=true #optionvalidateuri=false #optionwarnaboutlocale=true Registration.properties # # Registration # organizationname=my Organization servicename=my Service servicebindingaccessuri= classificationscheme=unspsc-org:unspsc:3-1 10
11 classificationname=research and Science Based Services classificationvalue= Criar ou editar ficheiro build.properties para acrescentar: ws-registry.username=testuser ws-registry.password=testuser Modificar build.xml, acrescentando a importação de um novo módulo: <import file="${import-ant/ws-registry.xml" /> As propriedades relacionadas com o registo UDDI: <property name="ws-registry.url" value=" /> <property name="ws-registry.main-class" value="step.framework.ws.registry.main" /> <property name="dir" value="${build.config.ws-registry.rel-dir" /> <property name="ws-registry.publish.args" value="${dir/registry.properties publish ${dir/registration.properties ${dir/registrationkey.properties" /> <property name="ws-registry.delete.args" value="${dir/registry.properties delete key ${dir/registrationkey.properties" /> <property name="ws-registry.query.args" value="${dir/registry.properties query classification ${dir/registration.properties" /> Uma nova dependência no build.xml: <target name="build" depends="config,build-ws-registry,build-jax-ws-server" description="builds the project"> Efectuar o registo: $ ant build-ws-registry ws-publish Consultar o registo: $ ant build-ws-registry ws-query Apagar o registo: $ ant build-ws-registry ws-delete 11
12 Criar um servidor com dois endpoints É possível que o mesmo servidor disponibilize dois endpoints, neste caso, Hello e Calc. No entanto, os itens de substituição (@...@) do ImportAnt já não funcionam correctamente e é necessário efectuar a configuração directamente nos ficheiros. Criar dois ficheiros de custom bindings: my-ws config resources jax-ws-server web.xml sun-jaxws.xml server-custom-binding_hello.xml server-custom-binding_calc.xml web.xml <?xml version="1.0" encoding="utf-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" " <web-app> <display-name>jax-ws Application</display-name> <description>jax-ws Application</description> <listener> <listenerclass>com.sun.xml.ws.transport.http.servlet.wsservletcontextlistener</listenerclass> </listener> <servlet> <servlet-name>jax-ws Servlet</servlet-name> <display-name>jax-ws Servlet</display-name> <description>jax-ws endpoint</description> <servletclass>com.sun.xml.ws.transport.http.servlet.wsservlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>jax-ws Servlet</servlet-name> <url-pattern>/endpoint_hello</url-pattern> </servlet-mapping> <servlet-mapping> <servlet-name>jax-ws Servlet</servlet-name> <url-pattern>/endpoint_calc</url-pattern> </servlet-mapping> <session-config> <session-timeout>60</session-timeout> </session-config> </web-app> sun-jaxws.xml <?xml version="1.0" encoding="utf-8"?> <endpoints xmlns=" version="2.0"> <endpoint name="endpoint_hello" interface="hello.ties.helloporttype" implementation="hello.helloserviceimpl" wsdl="web-inf/wsdl/hello.wsdl" service="{ port="{ url-pattern="/endpoint_hello" /> <endpoint name="endpoint_calc" interface="calc.ties.calcporttype" implementation="calc.calcserviceimpl" 12
13 wsdl="web-inf/wsdl/calc.wsdl" service="{ port="{ url-pattern="/endpoint_calc" /> </endpoints> server-custom-binding_hello.xml <?xml version="1.0" encoding="utf-8" standalone="yes"?> <bindings xmlns:xsd=" xmlns:jaxb=" xmlns:wsdl=" wsdllocation="hello.wsdl" xmlns=" <bindings node="wsdl:definitions"> <jws:handler-chains xmlns:jws=" <jws:handler-chain> <jws:handler> <jws:handler-class>util.hellologginghandler</jws:handlerclass> </jws:handler> </jws:handler-chain> </jws:handler-chains> </bindings> </bindings> server-custom-binding_calc.xml <?xml version="1.0" encoding="utf-8" standalone="yes"?> <bindings xmlns:xsd=" xmlns:jaxb=" xmlns:wsdl=" wsdllocation="calc.wsdl" xmlns=" <bindings node="wsdl:definitions"> <jws:handler-chains xmlns:jws=" <jws:handler-chain> <jws:handler> <jws:handler-class>util.calclogginghandler</jws:handlerclass> </jws:handler> </jws:handler-chain> </jws:handler-chains> </bindings> </bindings> 13
14 O build.xml deverá ter agora os seguintes targets: <target name="build" depends="config,build-jax-ws-server-ties_hello,build-jax-wsserver-ties_calc,compile,create-jax-ws-server-war" description="builds the project"> <target name="build-jax-ws-server-ties_hello"> <echo level="info" message="creating Hello ties..." /> <antcall target="build-jax-ws-server-ties" inheritall="false"> <param name="jax-ws-server.wsdl.file-name" value="hello.wsdl" /> <param name="jax-ws-server.wsimport.bindings.file-pattern" value="*binding*hello.xml" /> <param name="jax-ws-server.ties.package" value="hello.ties" /> </antcall> <target name="build-jax-ws-server-ties_calc"> <echo level="info" message="creating Calc ties..." /> <antcall target="build-jax-ws-server-ties" inheritall="false"> <param name="jax-ws-server.wsdl.file-name" value="calc.wsdl" /> <param name="jax-ws-server.wsimport.bindings.file-pattern" value="*binding*calc.xml" /> <param name="jax-ws-server.ties.package" value="calc.ties" /> </antcall> As propriedades relativas a Web Services (jax-ws-server.wsdl.file-name, jaxws-server.wsdl.namespace, etc.) devem desaparecer, porque as definições são agora feitas directamente nos ficheiros de configuração e não através do mecanismo de substituição (@...@). 14
15 Criar um cliente de Web Service Estratégia Um cliente de Web Service é uma aplicação que invoca um Web Service. Nesta receita cria-se um cliente que se executa a partir da linha de comando, no entanto, o procedimento é idêntico para aplicações Web ou de outro tipo. O procedimento consiste em criar uma estrutura de directórios e ficheiros para o projecto, gerar código Java de invocação e de conversão de dados e, finalmente, escrever o restante código. Aqui o cliente de Web Service é genericamente designado como MyWSCli. Este e outros nomes relacionados deverão ser ajustados caso a caso, de acordo com o pretendido. Passos básicos 1. Criar projecto Ant a. Criar estrutura de directorias e ficheiros para o projecto. import-ant my-ws config resources jax-ws-client client-custom-binding.xml src java client-custom-binding.xml <?xml version="1.0" encoding="utf-8" standalone="yes"?> <bindings xmlns:xsd=" xmlns:wsdl=" wsdllocation="@jax-ws-client.wsdl.url@" xmlns=" <bindings </bindings> </bindings> Este ficheiro contêm itens de substituição (@...@) que serão substituídos pelo ImportAnt durante o processo de construção. Deste modo, o ficheiro permanece sempre igual e o que muda é o build.xml. b. Criar ficheiro de construção build.xml: <project name="mywscli" default="build" basedir="."> <property name="import-ant" value="../import-ant" /> <!-- IMPORTS --> 15
16 <import file="${import-ant/core.xml" /> <import file="${import-ant/console-app.xml" /> <import file="${import-ant/jwsdp.xml" /> <import file="${import-ant/jax-ws-client.xml" /> /> <!-- Console application --> <property name="run.main-class" value="my.myclient" /> <property name="run.args" value=" <!-- Web Service client --> <property name="jax-ws-client.wsdl.url" value=" /> <property name="jax-ws-client.stubs.package" value="my.ws.stubs" /> <!-- CLASSPATHS --> <path id="compile.classpath"> <pathelement location="${build.classes.rel-dir" /> <path refid="project.lib.path" /> <path refid="jwsdp.jars.path" /> </path> <path id="run.classpath"> <path refid="compile.classpath" /> </path> <target name="build" depends="config,build-jax-ws-client,compile" description="build the project"> </project> c. Criar directorias temporárias build e dist e confirmar que sintaxe do build.xml está correcta: $ ant init 2. Criar cliente a. Gerar stubs i. Executar wsimport $ ant build-jax-ws-client ii. Consultar stubs gerados pelo wsimport em build/jax-wsclient/wsimport, em particular MyService.java e MyPortType.java b. Criar classe do cliente em src/java/my package my; import javax.xml.ws.bindingprovider; import javax.xml.ws.webserviceexception; import my.ws.stubs.*; public class MyServiceClient { public static void main(string[] args) { try { System.out.println("begin"); 16
17 // web service endpoint address String endpointurl = args[0]; System.out.println("Web Service endpoint URL: " + endpointurl); port; // // create Web Service stub // MyService service = new MyService(); MyPortType port = service.getmyport(); BindingProvider bindingprovider = (BindingProvider) // set endpoint address bindingprovider.getrequestcontext().put(bindingprovider.endpoint_ad DRESS_PROPERTY, endpointurl); // // invoke Web Service operation // port.myoperation(123, "abc"); catch(webserviceexception e) { // handle Web Service exception System.out.println("Caught web service exception: "); System.out.println(e.getClass().toString()); System.out.println(e.getMessage()); catch(exception e) { // handle general exception System.out.println("Caught exception: "); System.out.println(e.getClass().toString()); System.out.println(e.getMessage()); finally { System.out.println("end"); c. Construir cliente e executar $ ant run Variantes Diagnóstico de erros Consultar tipo e mensagem da excepção produzida. Usar Eclipse (Antes do passo 2) Iniciar o Eclipse e criar novo projecto File, New, Project, Java Project, Project name: MyWSCli Create project from existing source, Next Source, Source folder, src/java, Default output folder: build/eclipse Libraries, Add library, User library: jwsdp-essd-2008, Finish Add class folder: build/classes, Finish 17
18 O conjunto de bibliotecas (user library) jwsdp-essd-2008 pode ser importado a partir do ficheiro contido na directoria %JWSDP_HOME%\eclipse. Configurar Ant Windows, Show View, Ant View build.xml ~drag-and-drop~> Ant View Hide internal targets (Depois do passo 2, a, i) Refrescar Eclipse Project, Refresh (Apoio ao passo 2, b) Criar classe File, New, Class package: my name: MyServiceClient superclass: java.lang.object inherit abstract methods public static void main(string[] args) generate comments Activar um JAX-WS Handler no cliente Acrescentar o seguinte target ao build.xml. <target name="-replace-jax-ws-client-custom-tokens(dir)"> <replace dir="${dir" token="@jax-ws-client.handler-chains@"> <replacevalue><![cdata[ <jws:handler-chains xmlns:jws=" <jws:handler-chain> <jws:handler> <jws:handlerclass>my.handler.myclienthandler</jws:handler-class> </jws:handler> </jws:handler-chain> </jws:handler-chains> ]]></replacevalue> </replace> A classe my.handler.myclienthandler deverá existir e ser um JAX-WS Handler. 18
19 Obter a localização do Web Service a partir do UDDI Obter uma biblioteca com as classes step.framework.ws.registry.* e colocar numa das directorias lib do projecto: lib my-ws lib Criar e preencher ficheiros de configuração de registo Registry.properties (dados do servidor UDDI), ClassificationQuery.properties (dados de pesquisa por classificação) ou NamePatternQuery.properties (dados de pesquisa por nome). my-ws config ws-registry Registry.properties ClassificationQuery.properties NamePatternQuery.properties Registry.properties # # Registry # [email protected]@ [email protected]@ [email protected]@ #locale= optionoutputmessages=true #optionvalidateuri=false #optionwarnaboutlocale=true ClassificationQuery.properties # # Classification Query # queryclassificationscheme=unspsc-org:unspsc:3-1 queryclassificationname=research and Science Based Services queryclassificationvalue= NamePatternQuery.properties # # Name Pattern Query # querynamepattern=%organization% Criar ou editar ficheiro build.properties para acrescentar: ws-registry.username=testuser ws-registry.password=testuser Modificar build.xml, acrescentando a importação de um novo módulo: <import file="${import-ant/ws-registry.xml" /> As propriedades relacionadas com a pesquisa UDDI: <property name="ws-registry.url" value=" /> <property name="ws-registry.main-class" value="step.framework.ws.registry.main" /> 19
20 <property name="dir" value="${build.config.ws-registry.rel-dir" /> <property name="ws-registry.query.args" value="${dir/registry.properties query classification ${dir/classificationquery.properties" /> Uma nova dependência no build.xml: <target name="build" depends="config,build-ws-registry,build-jax-ws-client" description="builds the project"> Testar a pesquisa em tempo de compilação: $ ant build-ws-registry ws-query Efectuar a pesquisa no código do cliente: package my; import javax.xml.ws.bindingprovider; import javax.xml.ws.webserviceexception; import step.framework.ws.registry.*; import my.ws.stubs.*; public class MyServiceClient { public static void main(string[] args) { try { System.out.println("begin"); // // query web services registry // Registry registry = null; ClassificationQuery query = null; Registration[] registrationarray = null; try { registry = new Registry("/Registry.properties"); query = new ClassificationQuery("/ClassificationQuery.properties"); querying registry.setoptionoutputmessages(false); // no output registry.connect(false); // no authentication is required for registrationarray = registry.query(query); if(registrationarray == null) { System.out.println("No web service registrations found in registry server " + registry.geturl()); return; else { System.out.println("Found " + registrationarray.length + " web service registrations in registry server " + registry.geturl()); finally { if(registry!= null) registry.disconnect(); // // create Web Service stub // MyService service = new MyService(); MyPortType port = service.getmyport(); BindingProvider bindingprovider = (BindingProvider) port; // // for each web service, invoke Web Service operation // System.out.println("Invoking operation on all found web service 20
21 registrations"); for(int i=0; i < registrationarray.length; i++) { try { String endpointurl = registrationarray[i].getservicebindingaccessuri(); // set endpoint address System.out.println("Web Service endpoint URL: " + endpointurl); bindingprovider.getrequestcontext().put(bindingprovider.endpoint_address_property, endpointurl); port.myoperation(123, "abc"); catch(webserviceexception e) { // handle Web Service exception System.out.println("Caught web service exception: "); System.out.println(e.getClass().toString()); System.out.println(e.getMessage()); System.out.println("Proceed to next endpoint"); catch(exception e) { // handle general exception System.out.println("Caught exception: "); System.out.println(e.getClass().toString()); System.out.println(e.getMessage()); finally { System.out.println("end"); Criar um cliente de dois Web Services Para invocar dois Web Services a partir do mesmo cliente, suponhamos Hello e Calc, é necessário criar duas directorias de configuração: my-ws-cli config jax-ws-client_hello client-custom-binding.xml jax-ws-client_hello client-custom-binding.xml E modificar o build.xml: <target name="build" depends="config,build-jax-ws-client-stubs_hello,build-jax-ws-clientstubs_calc,compile" description="build the project"> <target name="build-jax-ws-client-stubs_hello"> <echo level="info" message="creating Hello stubs..." /> <antcall target="build-jax-ws-client-stubs" inheritall="false"> <param name="jax-ws-client.dir-name" value="jax-ws-client_hello" /> <param name="jax-ws-client.wsdl.url" value=" /> <param name="jax-ws-client.stubs.package" value="hello.ws.stubs" /> <param name="jax-ws-client.custom-tokens.target-name" value="- replace-jax-ws-client-custom-tokens(dir)_hello" /> </antcall> <target name="-replace-jax-ws-client-custom-tokens(dir)_hello"> <replace dir="${dir" token="@jax-ws-client.handler-chains@"> 21
22 <replacevalue><![cdata[ <jws:handler-chains xmlns:jws=" <jws:handler-chain> <jws:handler> <jws:handlerclass>step.framework.ws.handler.logginghandler</jws:handler-class> </jws:handler> </jws:handler-chain> </jws:handler-chains> ]]></replacevalue> </replace> <target name="build-jax-ws-client-stubs_calc"> <echo level="info" message="creating Calc stubs..." /> <antcall target="build-jax-ws-client-stubs" inheritall="false"> <param name="jax-ws-client.dir-name" value="jax-ws-client_calc" /> <param name="jax-ws-client.wsdl.url" value=" /> <param name="jax-ws-client.stubs.package" value="calc.ws.stubs" /> <param name="jax-ws-client.custom-tokens.target-name" value="- replace-jax-ws-client-custom-tokens(dir)_calc" /> </antcall> <target name="-replace-jax-ws-client-custom-tokens(dir)_calc"> <replace dir="${dir" <replacevalue><![cdata[ <jws:handler-chains xmlns:jws=" <jws:handler-chain> <jws:handler> <jws:handlerclass>step.framework.ws.handler.logginghandler</jws:handler-class> </jws:handler> </jws:handler-chain> </jws:handler-chains> ]]></replacevalue> </replace> Os targets -replace-jax-ws-client-custom-tokens(dir)_hello e -replace-jax-wsclient-custom-tokens(dir)_calc são definidos para permitir uma configuração individual de JAX-WS Handlers. O código do cliente deve importar e usar os stubs dos dois Web Services: import hello.ws.stubs.*; import calc.ws.stubs.*;... 22
Livro de Receitas. Modelação Engenharia de Software Sistemas Distribuídos. 2009-04-17 Versão 1.1. Framework de aplicações com Web Services
Modelação Engenharia de Software Sistemas Distribuídos Departamento Engenharia Informática Livro de Receitas Framework de aplicações com Web Services 2009-04-17 Versão 1.1 Índice Índice... 2 Nota prévia...
Web Services utilizando JAX-WS
Web Services utilizando JAX-WS JAX-WS Facilitar o uso da API JAX-RPC e do modelo de implantação Anotações baseados em JSR-181 Exemplo Básico: Anotações: @WebService @WebMethod @WebParam @WebResult Exemplo
Criar uma aplicação JPA2 com EclipseLink e H2
Criar uma aplicação JPA2 com EclipseLink e H2 1) Criar uma aplicação Java no NetBeans. File > New Project > Java, Java Application > Project name: JPA2 Finish. 2) Acrescentar ao Projeto NetBeans a biblioteca
Criação de Servlets Name Directory Build WAR JSP/Servlet frameworks Launch URL Package Class name Generate header comments
Criação de Servlets 1. Crie um novo projeto através do Menu File New Project. 2. Acesse o Menu File New. 3. Na janela Object Gallery que surgirá, selecione a guia Web. 4. Escolha o ícone que corresponde
UNIVERSIDADE. Sistemas Distribuídos
UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira Neto Web Services (continuação) WSDL - Web Service Definition Language WSDL permite descrever o serviço que será oferecido
Sistemas Paralelos e Distribuídos - 2003/2004 Curso: Matemática /Informática Sistemas Distribuídos - 2003/2004 Curso: Ensino da Informática
Java RMI - Remote Method Invocation Folha 5-1 No modelo de programação orientada a objectos, vimos que um programa consiste numa colecção de objectos que comunicam entre si através da invocação dos seus
Num sistema de objectos distribuídos, dois conceitos são fundamentais.
Folha 10-1 Java RMI - Remote Method Invocation No modelo de programação orientada a objectos, vimos que um programa consiste numa colecção de objectos que comunicam entre si através da invocação dos seus
Como criar um EJB. Criando um projeto EJB com um cliente WEB no Eclipse
Como criar um EJB Criando um projeto EJB com um cliente WEB no Eclipse Gabriel Novais Amorim Abril/2014 Este tutorial apresenta o passo a passo para se criar um projeto EJB no Eclipse com um cliente web
Guião de Introdução ao Eclipse IDE Índice
Índice 1. Introdução... 2 1.1. O que é um ambiente de desenvolvimento (IDE)?... 2 1.2. Visão geral sobre o Eclipse IDE... 2 2. Iniciar o Eclipse... 3 2.1. Instalação... 3 2.2. Utilizar o Eclipse... 3 3.
Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva
1. O que são Serviços Web (Web Services)? Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva A ideia central dos Web Services parte da antiga necessidade
Passo a Passo. WebSphere Message Broker. Fluxo como WebService
Passo a Passo WebSphere Message Broker Fluxo como WebService Alexandre José Batista [email protected] Criado em: 07/11/08 Página 1 de 38 Índice 1. OBJETIVOS DO DOCUMENTO... 4 2. CRIANDO UM FLUXO NO
5 Everyware: Uma Arquitetura para Aplicações baseadas em serviços utilizando a Web Semântica
5 Everyware: Uma Arquitetura para Aplicações baseadas em serviços utilizando a Web Semântica! " " $ % &' (' $ ) * ' +,-$. / ) $0)( 5.1. Princípio de Organização 1* 2 " &)') $ $ *..*$ EveryWare: Uma Plataforma
Grupo I [7v] 1. [1,0] Apresente o conteúdo do IDL relativo a este programa. Assuma PROGRAM=62015 e VERSION=1.
Número: Nome: Página 1 de 6 LEIC/LETI, 2014/15, Repescagem do 1º Teste de Sistemas Distribuídos 30 de Junho de 2015 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Duração:
Introdução ao IDE Netbeans (Programação Java)
Universidade Federal do ABC (UFABC) Disciplina: Processamento da Informação (BC-0505) Assunto: Java e Netbeans Introdução ao IDE Netbeans (Programação Java) Conteúdo 1. Introdução... 1 1.1. Programas necessários...
Aplicabilidade: visão geral
CURSO BÁSICO SAXES 2 Aplicabilidade: visão geral BI Comércio Indústria nf-e Serviços Software house Enterprise Business Bus Banco financeiro Instituição Sindicato ERP html Casos 3 6 Customização: importação
Grupo I [6v] Considere o seguinte extracto de um programa de definição de uma calculadora apenas com a função soma de dois valores reais
Número: Nome: Página 1 de 5 LEIC/LERC 2012/13, Repescagem do 1º Teste de Sistemas Distribuídos, 25 de Junho de 2013 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Duração:
Chamadas Remotas de Procedimentos (RPC) O Conceito de Procedimentos. RPC: Programa Distribuído. RPC: Modelo de Execução
Chamadas Remotas de Chamada Remota de Procedimento (RPC) ou Chamada de Função ou Chamada de Subrotina Método de transferência de controle de parte de um processo para outra parte Procedimentos => permite
SOA na Prática Ricardo Limonta
SOA na Prática Ricardo Limonta Arquiteto JEE Objetivo Apresentar os conceitos de Arquiteturas Orientadas a Serviços; Entender a relação entre SOA e a tecnologia Web Services; Implementar SOA com Web Services
Bases de Dados. Lab 1: Introdução ao ambiente
Departamento de Engenharia Informática 2010/2011 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo
Professora Martha Spalenza Professora de Informática da Faetec
Ambiente de Desenvolvimento JCreator Como criar um programa utilizando o JCreator O kit de programas da linguagem Java fornecido pela Sun Microsystems, a criadora do Java, compõe-se do compilador (o gerador
Programação para Internet Avançada. 4. Web Services. Nuno Miguel Gil Fonseca [email protected]
Programação para Internet Avançada 4. Web Services Nuno Miguel Gil Fonseca [email protected] São módulos de aplicações de negócios que expõem as regras do negócio como serviços na Internet através
Configuração de Cliente de Web Service HTTPS
Configuração de Cliente de Web Service HTTPS Envio de registros civis ao SIRC através de Central de Registros Civis Configurando_Cliente_de_Web_Service_HTTPS.odt 1 de 20 Histórico de Revisões Data Versão
Editor Eclipse para Programas F
Editor Eclipse para Programas F Guia de instalação e utilização Instalação no Windows (XP/Vista) Comece por descarregar a aplicação de instalação setupcp2008.exe do endereço http://www.math.ist.utl.pt/~jabr/cp/
Prática em Laboratório N.04 (Parte 01) Criando uma aplicação composta a partir de um serviço Web
Prática em Laboratório N.04 (Parte 01) Criando uma aplicação composta a partir de um serviço Web O objetivo deste exercício é fornecer uma introdução a criação de uma aplicação composta de modo a ilustrar
Tutorial RMI (Remote Method Invocation) por Alabê Duarte
Tutorial RMI (Remote Method Invocation) por Alabê Duarte Este tutorial explica basicamente como se implementa a API chamada RMI (Remote Method Invocation). O RMI nada mais é que a Invocação de Métodos
Tutorial Módulo 06 - Segurança
LABORATÓRIO 06 Segurança Este laboratório tem por objetivo exercitar o uso do componente de segurança do Framework e uso da especificação JAAS. Objetivos: Uso do Login Module do Componente de Segurança
OWL-S Composer. MATE15 - Tópicos Especiais em Banco de Dados III. 17 de Julho de 2013. Marco Antonio Almeida 1 e Daniela Barreiro Claro 2
MATE15 - Tópicos Especiais em Banco de Dados III OWL-S Composer 17 de Julho de 2013 Marco Antonio Almeida 1 e Daniela Barreiro Claro 2 1 [email protected] 2 [email protected] MOTIVAÇÃO E HISTÓRICO MOTIVAÇÃO
Conteúdo da Aula de Hoje. Web Services. Avaliação da Disciplina. O que é um web service? O que é um web service? Vantagens
Web Services Pós-Graduação em Tecnologias para o desenvolvimento de aplicações WEB Conteúdo da Aula de Hoje Conceitos básicos Teste com WS Implementação de WS (Provedor e usuário) Instrutor : Avaliação
Instalação do Plugin LeJOS
Instalação do Plugin LeJOS http://legolab.daimi.au.dk/digitalcontrol.dir/lejos_nxj.dir/lejos_nxj_install_guide.html Guia de Instalação do lejos NXJ através do Eclipse para Windows XP Setup Básico 1. Instale
Engenharia de Software Sistemas Distribuídos
Engenharia de Software Sistemas Distribuídos 2 o Semestre de 2007/2008 Requisitos para a 1 a entrega Loja Virtual 1 Introdução O enunciado base do projecto conjunto das disciplinas de Engenharia de Software
Manual de Instruções para a Criação de Ficheiros CSR. Microsoft IIS 5/6
Manual de Instruções para a Criação de Ficheiros CSR Página 1 de 8 CONTROLO DOCUMENTAL REGISTO DE MODIFICAÇÕES Versão Data Motivo da Modificação PREPARADO REVISTO APROVADO ACEITE DUS/RS DISTRIBUIÇÃO DO
Unidade 14: Web Services Prof. Daniel Caetano
Programação Servidor em Sistemas Web 1 Unidade 14: Web Services Prof. Daniel Caetano INTRODUÇÃO Na maior parte deste curso foram estudados serviços desenvolvidos com o uso de tecnologias Servlet. Entretato,
Configurar o Furbot no Eclipse
Configurar o Furbot no Eclipse Primeiramente, precisamos abrir o Eclipse. Logo no início, deverá aparecer uma tela assim: Nela, você irá selecionar o local do seu workspace. Workspace é o local onde ficarão
Criação de um novo projeto no Eclipse utilizando Maven
1. Faça o download da versão mais atual do Eclipse IDE for Java EE Developers em https://www.eclipse.org/downloads/. 2. No Eclipse, crie um novo projeto Maven, em File >> New >> Maven Project 3. Marque
Prática em Laboratório N.01 Criando um Serviço Web via Console
Prática em Laboratório N.01 Criando um Serviço Web via Console O objetivo criar um serviço Web via console usando apenas um editor de texto. Obtenha os arquivos da Prática N.01 Você deve recuperar os arquivos
WSDL e UDDI. Pedro Miguel Martins Nunes WSDL. WSDL Exemplo prático Resumo UDDI. Serviço UDDI Estruturas de dados UDDI e WSDL API Resumo
e Serviço e e Tecnologias de Middleware 06/07 Curso de Especialização em Informática Departamento de Informática Faculdade de Ciências da Universidade de Lisboa 27.10.2006 e Serviço e 1 2 Serviço e 3 e...o
O nome ANT é uma sigla para another neat tool (mais uma ferramenta organizada), segundo seu autor James Duncan Davidson.
1- Introdução 1.1- Visão Geral O ANT é uma ferramenta destinada a construção (build) de programas JAVA. É semelhante a ferramentas como make, nmake, jam mas com o diferencial de ser multi-plataforma, pois
Instalação e utilização do Eclipse / Fortran em Windows
Computação e Programação Instalação e utilização do Eclipse / Fortran em Windows Nalgumas versões recentes do Windows o instalador referido na página da disciplina não consegue instalar corretamente o
Descompacte o arquivo site-1.2.4.zip que foi baixado dentro da pasta do eclipse.
3 Manual do Desenvolvedor 3.1 Introdução O site que disponibiliza o SIGATI utiliza o sistema de SVN que é um programa de controle de versão de softwares utilizado no Trac. Com ele o desenvolvedor pode
Exemplo de Aplicaça o Facebook
HCIM Summer Workshop Guião Hands-on Exemplo de Aplicaça o Facebook 1. Download do Software Development Kit (SDK) O download do SDK do Facebook encontra-se disponível aqui. Depois de fazer o download do
Invocação de Métodos Remotos
Invocação de Métodos Remotos Java RMI (Remote Method Invocation) Tópicos Tecnologia RMI Introdução Modelo de camadas do RMI Arquitetura Fluxo de operação do RMI Passos para implementação Estudo de caso
SISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS CUP Disk Memoey CUP Memoey Disk Network CUP Memoey Disk Remote Method Invocation (RMI) Introdução Solução JAVA para Objetos Distribuídos Um objeto existe em uma máquina É possível
CURSO DE PROGRAMAÇÃO EM JAVA
CURSO DE PROGRAMAÇÃO EM JAVA Introdução para Iniciantes Prof. M.Sc. Daniel Calife Índice 1 - A programação e a Linguagem Java. 1.1 1.2 1.3 1.4 Linguagens de Programação Java JDK IDE 2 - Criando o primeiro
Criação de um Web Services em.net
Web Service em.net 1 Criação de um Web Services em.net 1. Criar um novo projecto do tipo ASP.NET Web Service, de acordo com a figura seguinte. O.Net cria um directório virtual com os ficheiros indicados
Web Services. Tópicos. Motivação. Tecnologias Web Service. Passo a passo Business Web Conclusão. Integração de aplicações SOAP, WSDL, UDDI, WSFL
Web Services Antonio Dirceu [email protected] Tópicos Motivação Integração de aplicações Tecnologias Web Service SOAP, WSDL, UDDI, WSFL Passo a passo Business Web Conclusão Motivação Integração de Aplicações
WebWork 2. João Carlos Pinheiro. [email protected]
WebWork 2 João Carlos Pinheiro [email protected] Versão: 0.5 Última Atualização: Agosto/2005 1 Agenda Introdução WebWork 2 & XWork Actions Views Interceptadores Validação Inversão de Controle (IoC)
Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04
Tencologia em Análise e Desenvolvimento de Sistemas Disciplina: WEB I Conteúdo: WEB Container Aula 04 Agenda 1. 2. Web Container TomCat 2 3 J2EE permite criar aplicações Web dinâmicas (com conteúdo dinâmico)
Forms Authentication em ASP.NET
Forms Authentication em ASP.NET Em muitos sites web é necessário restringir selectivamente o acesso a determinadas áreas, ou páginas, enquanto para outras páginas pode permitir-se acesso livre. ASP.NET
Computação Orientada a Serviços
Universidade Tecnológica Federal do Paraná Campus Cornélio Procópio Computação Orientada a Serviços Elias Canhadas Genvigir Roteiro de Apresentação Introdução Problema Computação Orientada a Serviços Serviços
Bases de Dados. O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo ilustrada na figura 1.
Departamento de Engenharia Informática 2008/2009 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro create-bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo
Criação de um Web Services em.net
Web Service em.net 1 Criação de um Web Services em.net 1. Criar um novo Web Site com template ASP.NET Web Service, de acordo com a figura seguinte. O Visual studio cria um directório com os ficheiros indicados
JPA: Persistência padronizada em Java
JPA: Persistência padronizada em Java FLÁVIO HENRIQUE CURTE Bacharel em Engenharia de Computação [email protected] Programação Orientada a Objetos X Banco de Dados Relacionais = Paradigmas diferentes
Java 2 Standard Edition. Fundamentos de. Objetos Remotos. Helder da Rocha www.argonavis.com.br
Java 2 Standard Edition Fundamentos de Objetos Remotos Helder da Rocha www.argonavis.com.br 1 Sobre este módulo Este módulo tem como objetivo dar uma visão geral, porém prática, da criação e uso de objetos
Nota de Aula: Utilização da IDE Code::Blocks
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO MARANHÃO CAMPUS SÃO LUÍS MONTE CASTELO DEPARTAMENTO ACADÊMICO DE INFORMÁTICA SISTEMAS DE INFORMAÇÃO DISCIPLINA: LINGUAGEM DE PROGRAMAÇÃO I PROFESSOR:
Arquitetura de Aplicações JSP/Web. Padrão Arquitetural MVC
Arquitetura de Aplicações JSP/Web Padrão Arquitetural MVC Arquitetura de Aplicações JSP/Web Ao projetar uma aplicação Web, é importante considerála como sendo formada por três componentes lógicos: camada
Web Services e SOAP. Alexandre Zua CaldeiraTecnologias de Middleware 2006/2007 20.10.2006. Faculdade de Ciências da Universidade de Lisboa
Alexandre Zua Caldeira Tecnologias de Middleware 2006/2007 Faculdade de Ciências da Universidade de Lisboa 20.10.2006 1 Introdução Definições Limitações do Middleware Estudado Integração com Web Services
Capítulo 4. Packages e interfaces
Capítulo 4. Packages e interfaces 1/17 Índice Indice 4.1 - Package 4.2 - Interface 2/17 Índice 4.1 Package 4.1 - Package 4.2 -- Interface 3/17 4.1 Package Package ou pacote está para o Java como as directorias
Java Laboratório Aula 1. Divisões da Plataforma. Introdução a Plataforma Java. Visão geral da arquitetura da
Java Laboratório Aula 1 Programação orientada a objetos Profa. Renata e Cristiane Introdução a Plataforma Java O que é Java? Tecnologia Linguagem de Programação Ambiente de Execução (JVM) Tudo isso é a
Bases de Dados. Lab 1: Introdução ao ambiente. Figura 1. Base de dados de exemplo
Departamento de Engenharia Informática 2012/2013 Bases de Dados Lab 1: Introdução ao ambiente 1º semestre O ficheiro bank.sql contém um conjunto de instruções SQL para criar a base de dados de exemplo
Serviços Web: Arquitetura
Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula
Solutions for Information Technologies. BIS-Navegador. Manual de Instalação para Microsoft SQL Server
Solutions for Information Technologies BIS-Navegador Manual de Instalação para Microsoft SQL Server Supporte A suite BIS foi testada e é suportada nos seguintes ambientes e produtos: BIS Client Components:
J550 Tag Libraries e JSTL
J550 Tag Libraries e JSTL Helder da Rocha ([email protected]) www.argonavis.com.br 1 Custom tags JSP com JavaBeans fornecem um meio de diminuir código Java da página, mas não totalmente Designers de página
ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA
P. Fazendeiro & P. Prata POO FP1/1 ESQUEMA AULA PRÁTICA 1 Familiarização com o Ambiente de Desenvolvimento Eclipse Introdução à Linguagem de Programação JAVA 0 Inicie o ambiente de desenvolvimento integrado
Solutions for Information Technologies. BIS-Navegador. IBM DB2 UDB v8.x
Solutions for Information Technologies BIS-Navegador Manual de Instalação em IBM DB2 UDB v8.x Supporte A suite BIS foi testada e é suportada nos seguintes ambientes e produtos: BIS Client Components: Operating
Ficha prática nº 7. SGBD Microsoft Access e SQL Server
Instituto Superior Politécnico de Viseu Escola Superior de Tecnologia Departamento de Informática Ficha prática nº 7 SGBD Microsoft Access e SQL Server Objectivo: Criação de uma aplicação em arquitectura
Hoje em dia é muito comum utilizar uma API de logging de mensagens como o Log4j para indicar os comportamentos de uma aplicação.
Introdução Hoje em dia é muito comum utilizar uma API de logging de mensagens como o Log4j para indicar os comportamentos de uma aplicação. O Log4j é um é um projeto open source distribuído pela Apache
Connection String usada por uma Class Library
Connection String usada por uma Class Library Vamos considerar uma Class Library com o modelo de dados e com acesso à base de dados através do Entity Framework. Aonde deve ser colocada a connection string
Desenvolvimento Web com Framework Demoiselle versão 1.0
Desenvolvimento Web com Framework Demoiselle versão 1.0 Módulo 07: Outros Componentes Autor: Rodrigo Hjort Serpro / Coordenação Estratégica de Tecnologia / Curitiba www.frameworkdemoiselle.org.br Modificado
Prática em Laboratório N.02 Criando um serviço Web via NetBeans
Prática em Laboratório N.02 Criando um serviço Web via NetBeans O objetivo deste exercício é criar um projeto apropriado para desenvolver um contêiner que você resolva utilizar. Uma vez criado o projeto,
DSS 09/10. DSS 09/10 Que métodos é que fazem parte de cada camada? Aplicações Multi-camada JDBC. Aula 3 DSS 09/10
Universidade do Minho Departamento de Informática Aplicações Multi-camada JDBC Aula 3 António Nestor Ribeiro /António Ramires Fernandes/ José Creissac Campos {anr,arf,[email protected] 2 Programação
J820. Testes de interface Web com. HttpUnit. argonavis.com.br. Helder da Rocha ([email protected])
J820 Testes de interface Web com HttpUnit Helder da Rocha ([email protected]) O que é HttpUnit API Java para comunicação com servidores HTTP Permite que programas construam e enviem requisições, e depois
Impressão do Manual do Utilizador
bibliopac Interface WWW Versão 2003 Guia de instalação rápida Junho 2003 ATENÇÃO! Impressão do Manual do Utilizador No CD de instalação está disponível o ficheiro Interface WWW Manual.PDF. Este manual,
Persistência de Classes em Tabelas de Banco de Dados
UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Persistência de Classes em Tabelas de Banco de Dados 1) Introdução! Em algumas situações, pode ser necessário preservar os objetos
Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans.
1 - Criando uma classe em Java Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans. Antes de criarmos a(s) classe(s) é necessário criar o projeto
Documentação Symom. Agente de Monitoração na Plataforma Windows
Documentação Symom de Monitoração na Plataforma Windows Windows Linux Windows Linux Plataforma Windows Instalação A instalação do de Monitoração do Symom para Windows é feita através do executável setup.exe
VM Card. Referência das Definições Web das Funções Avançadas. Manuais do Utilizador
VM Card Manuais do Utilizador Referência das Definições Web das Funções Avançadas 1 Introdução 2 Ecrãs 3 Definição de Arranque 4 Informações de Função Avançada 5 Instalar 6 Desinstalar 7 Ferramentas do
Engenharia de Software Sistemas Distribuídos
Engenharia de Software Sistemas Distribuídos 2 o Semestre de 2009/2010 FEARSe Requisitos para a 1 a entrega 18 de Março de 2010 1 Introdução O projecto conjunto das disciplinas de Engenharia de Software
1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF)
Sessão Prática II JPA entities e unidades de persistência 1 Criar uma entity a partir de uma web application que usa a Framework JavaServer Faces (JSF) a) Criar um Web Application (JPAsecond) como anteriormente:
BlackBerry Messenger SDK
BlackBerry Messenger SDK Versão: 1.2 Getting Started Guide Publicado: 2011-10-11 SWD-1391821-1011103456-012 Conteúdo 1 Requisitos do sistema... 2 2 Dependências de versão do BlackBerry Messenger... 3 3
Web services. Um web service é qualquer software que está disponível através da Internet através de uma interface XML.
Web services Um web service é qualquer software que está disponível através da Internet através de uma interface XML. XML é utilizado para codificar toda a comunicação de/para um web service. Web services
Integrando Flex + Java + BlazeDS
Integrando Flex + Java + BlazeDS (Vagner Machado) Para este tutorial serão necessários os seguintes requisitos: - Flex Builder 3. http://www.adobe.com/cfusion/entitlement/index.cfm?e=flex3email - BlazeDS
Guia rápido de uso da interface beta do NFS-e Easy para operação com Sistemas WebISS
Guia rápido de uso da interface beta do NFS-e Easy para operação com Sistemas WebISS NFS-e Easy v.1.0.2 RC1 Produto: Guia rápido de utilização do NFS-e Easy v1.0.2 RC1 Release date: Set, 23 2010 1 Sumário
Como o FIT funciona. FIT: Framework for Integrated Tests FIT. http://fit.c2.com. Dados de testes. Programa. Fixtures. classes. Resultados de testes
Como o FIT funciona FIT: Framework for Integrated Tests http://fit.c2.com Dados de testes Fixtures Programa classes FIT Resultados de testes Universidade Portucalense Engenharia de Software ES04 2014-2015
Redes de Computadores. Trabalho de Laboratório Nº8
Redes de Computadores Curso de Eng. Informática Curso de Eng. de Electrónica e Computadores Trabalho de Laboratório Nº8 Configuração e utilização do FTP 2004/2005 1 Objectivo Configuração de um servidor
Guia do Usuário Windows
Guia do Usuário Windows Manual Básico para contas Windows Acessando o Painel de Controle: URL: http://67.15.8.214 Entre com seu usuário e senha. Informações sobre sua conta: Verás no canto superior esquerdo
