Criando Um Aplicativo Composto_com NetBeans

  • Published on
    23-Jun-2015

  • View
    198

  • Download
    4

Transcript

Criando um aplicativo composto de processamento de emprstimos

Autor: Gentil Cantarelli Fachi

Criando um aplicativo composto de processamento de emprstimos Este tutorial fornece uma viso geral de um aplicativo composto Solicitante de emprstimo simples e mostra como implantar, executar e testar um aplicativo composto usando o pacote NetBeans Enterprise Pack 5.5 com todos os tempos de execuo necessrios. O aplicativo composto Solicitante de emprstimo satisfaz o seguinte caso de uso comercial: O usurio pede um emprstimo, preenchendo uma solicitao de emprstimo, incluindo informaes de identificao pessoal, total do emprstimo solicitado e histrico de crdito. Quando a solicitao de emprstimo recebida, as informaes pessoais fornecidas pelo usurio so verificadas em um banco de dados existente, e a aprovao concedida ou negada com base nas informaes e na quantia solicitada. Depois que algumas formalidades so cumpridas, um relatrio, no formato de uma carta de aprovao, gerado e enviado para o usurio, confirmando a aprovao do emprstimo. Se o emprstimo for negado por algum motivo, gerado e exibido um relatrio mostrando o motivo da rejeio.

Pr-requisitos Este tutorial presume que voc possui algum conhecimento bsico ou experincia de programao na linguagem e na plataforma Java e no NetBeans IDE. Requisitos do sistema Este tutorial presume que o seu sistema atende aos requisitos especificados no tpico Requisitos do sistema das Notas de verso do NetBeans Enterprise Pack 5.5. Software necessrio para o tutorial Antes de comear, voc deve instalar o seguinte software em seu computador: NetBeans IDE 5.5 com NetBeans Enterprise Pack 5.5 (download)

Para poder completar as etapas de implantao deste tutorial, voc deve ter o Sun Java System Application Server Platform Edition 9 atualizao 1. Esse servidor de aplicativos oferecido com o download do NetBeans Enterprise Pack 5.5. Contedo Antes de implantar o seu aplicativo, o servidor de aplicativos Sun Java System e o tempo de execuo JBI devem estar configurados corretamente e em execuo. Para configurar o ambiente do tutorial: Clique na guia Tempo de execuo para abrir a janela Tempo de execuo. Na janela Tempo de execuo, expanda o n Servidores. Se o n Servidores j contiver um n Servidor de aplicativos Sun Java System 9, v para a etapa 5. Se o n Servidores no contiver um n Servidor de aplicativos Sun Java System 9, faa o seguinte para adicionar um servidor de aplicativos: Clique com o boto direito do mouse no n Servidores e escolha Adicionar servidor no menu pop-up. A caixa de dilogo Adicionar instncia do servidor aberta. Na pgina Escolher servidor, na lista suspensa Servidor, selecione Servidor de aplicativos Sun Java System. (Opcional) No campo Nome, aceite o valor padro ou digite o nome que voc deseja usar para identificar o servidor no IDE. Clique em Prximo. A pgina Local da pasta da plataforma aberta. No campo Local da plataforma, use o boto Explorar para navegar e selecionar o local de instalao do servidor de aplicativos. Caso voc tenha aceito os valores padro durante a instalao, o local C:\Sun\Appserver. Selecione a opo Registrar domnio local padro. Clique em Prximo. Fornea o nome de usurio e a senha do administrador do domnio. Caso voc tenha aceito os valores padro durante a instalao, o nome de usurio admin e a senha adminadmin. Clique em Finalizar. Na janela Tempo de execuo, clique com o boto direito do mouse no n Servidor de aplicativos Sun Java System 9 e escolha Iniciar. Se a opo Iniciar no estiver disponvel, o servidor j est em execuo e voc pode ignorar a prxima etapa. Espere at que a mensagem seguinte aparea na janela Sada: Inicializao do servidor de aplicativos concluda. Quando o servidor est em execuo, o IDE exibe um smbolo de seta verde no n Servidor de aplicativos Sun Java System 9.

Criando o projeto BPEL Nesta seo, voc cria um projeto do mdulo BPEL chamado LoanRequestor. Para criar o projeto LoanRequestor: No menu principal do IDE, escolha Arquivo > Novo projeto. O assistente para Novo projeto aberto. Na lista Categorias, selecione n Service Oriented Architecture. Na lista Projetos, selecione n Mdulo BPEL. Clique em Prximo. No campo Nome do projeto, digite LoanRequestor. (Opcional) No campo Local do projeto, use o boto Explorar para navegar e selecionar uma pasta diferente, onde o IDE armazenar os arquivos do projeto. Clique em Finalizar. A janela Projetos agora contm um n de um projeto do mdulo BPEL chamado LoanRequestor.

superior Criando o esquema XML Nesta seo, voc adiciona um novo arquivo do esquema XML ao projeto do mdulo BPEL e, em seguida, adiciona os componentes do esquema XML ao esquema. Para criar LoanRequestor.xsd: Na janela Projetos, expanda o n do projeto LoanRequestor, clique com o boto direito do mouse no n Arquivos do processo e escolha Novo > Arquivo/Pasta. O assistente para Novo arquivo se abre. No assistente para Novo arquivo, adote o seguinte procedimento:

Na pgina Escolher tipo de arquivo, na lista Categorias, selecione o n XML, em seguida, na lista Tipos de arquivo, selecione Esquema XML e clique em Prximo. No campo Nome do arquivo, digite LoanRequestor. Clique em Finalizar. Na janela Projetos, o n Arquivos do processo agora contm um subn chamado LoanRequestor.xsd. O Editor de fontes agora contm uma guia do arquivo do esquema XML, LoanRequestor.xsd, com a exibio Esquema aberta. Na exibio Esquema, clique no boto Design para abrir a exibio Design do editor do esquema XML.

Para adicionar tipos complexos ao esquema XML: Na Paleta da exibio Design, expanda a seo Componentes do esquema XML e selecione o cone Tipo complexo. Se a janela Paleta no estiver visvel, escolha Janela > Paleta no menu principal. Arraste a sua seleo para a rea de design do esquema, imediatamente abaixo do n Tipos complexos. O IDE adiciona um n Tipo complexo e o nome do tipo complexo (newComplexType) selecionado e fica pronto para ser alterado. Digite processApplication no novo n e pressione Enter. A rea Design agora mostra seu novo tipo complexo, chamado processApplication. Repita as etapas 1 a 3 e nomeie outro novo tipo complexo processApplicationResponse.

Para adicionar elementos locais a processApplication e processApplicationResponse: Na seo Componentes de XML da Paleta, selecione o cone Elemento e arraste a sua seleo para o n processApplication na rea de design do esquema. O IDE adiciona um n de elemento chamado newElement. Se a janela Propriedades no estiver visvel, escolha Janela > Propriedades. Na rea de design do Esquema, selecione o n newElement. Na janela Propriedades, selecione o campo de valor da propriedade Nome para torn-lo editvel e digite socialSecurityNumber. Na janela Propriedades, defina o campo de valor da propriedade Anulvel como Verdadeiro. Na janela Propriedades, na propriedade Definio, clique no boto de reticncias. A caixa de dilogo Definio aberta. Na lista, expanda o n Tipos incorporados e selecione o n seqncia. Clique em OK. Repita as etapas 1 a 8 para adicionar os seguintes elementos: Nome applicantName applicantAddress applicantAge applicantGender annualSalary amountRequested Anulvel Definio Verdadeiro seqncia Verdadeiro seqncia Verdadeiro int Verdadeiro seqncia Verdadeiro dobro Verdadeiro dobro

applicantEmailAddress Verdadeiro seqncia

Na seo Componentes de XML da Paleta, selecione o cone Elemento e arraste a sua seleo para o n processApplicationResponse na rea de design do esquema. O IDE adiciona um n de elemento chamado newElement. Na rea de design do esquema, selecione o n newElement. Na janela Propriedades, selecione o campo de valor da propriedade Nome para torn-lo editvel e digite retorno.

Na janela Propriedades, na propriedade Definio, clique no boto de reticncias. A caixa de dilogo Definio aberta. Na lista, expanda o n Tipos incorporados e selecione o n seqncia. Clique em OK.

Para adicionar elementos globais: Na seo Componentes de XML da Paleta, selecione o cone Elemento e arraste a sua seleo para a rea Design, imediatamente abaixo do n Elementos. O IDE adiciona um componente newElement abaixo dos ns Elementos na rea de design do esquema. Na rea de design do Esquema da exibio Design, selecione o n do newElement. Na janela Propriedades, selecione o campo de valor da propriedade Nome para torn-lo editvel e digite processApplication. Na janela Propriedades, na propriedade Definio, clique no boto de reticncias. A caixa de dilogo Definio do elemento aberta. Na lista de tipos, expanda o n Tipos complexos e selecione o n do tipo complexo processApplication. Clique em OK.

Repita as etapas 1 a 6 para adicionar o seguinte elemento: Nome Tipos complexos

processApplicationResponse processApplicationResponse Para salvar as suas alteraes, na janela Projetos, selecione o n do projeto LoanRequestor, e no menu principal do IDE, escolha Arquivo > Salvar todos.

superior Criando o documento WSDL Nesta seo, voc adiciona um arquivo WSDL ao seu projeto do mdulo BPEL e, em seguida, configura os componentes do documento WSDL. Para criar LoanRequestor.wsdl: Na janela Projetos, expanda o n do projeto LoanRequestor, clique com o boto direito do mouse no n Arquivos do processo e escolha Novo > Documento WSDL. O assistente para Novo documento WSDL aberto. Na pgina Nome e local, adote o seguinte procedimento: No campo Nome do arquivo, digite LoanRequestor. Marque a caixa de seleo Importar arquivo(s) do esquema XML. No campo Esquema(s) XML, clique no boto Explorar. A caixa de dilogo Selecionar esquemas aberta. Essa caixa de dilogo mostra os esquemas XML do seu projeto. Selecione src/LoanRequestor.xsd e clique em OK. Clique em Prximo. A pgina Configurao abstrata aberta. Na rea Entrada da pgina Configurao abstrata, adote o seguinte procedimento: Na coluna Nome da parte da mensagem, clique duas vezes no valor padro para tornar o campo editvel. Digite requestLoanMessage e pressione Enter. Na coluna Elemento ou Tipo, clique no boto de reticncias. A caixa de dilogo Selecionar elemento ou tipo aberta. Expanda o n LoanRequestor, o n src/LoanRequestor.xsd e o n Elementos. No n Elementos, selecione o n processApplication e clique em OK. Na rea Sada da pgina Configurao abstrata, adote o seguinte procedimento:

Na coluna Nome da parte da mensagem, clique duas vezes no valor padro para tornar o campo editvel. Digite responsePart e pressione Enter. Na coluna Elemento ou Tipo, clique no boto de reticncias. A caixa de dilogo Selecionar elemento ou tipo aberta. Expanda o n LoanRequestor, o n src/LoanRequestor.xsd e o n Elementos. No n Elementos, selecione processApplicationResponse e clique em OK. Clique em Prximo. A pgina Configurao concreta aberta. Observao: Quando voc realizar a prxima etapa, a mensagem de erro na parte inferior da pgina desaparecer. Em Subtipo de vinculao, selecione a opo Literal de documento. Clique em Finalizar. Na janela Projetos, o n Arquivos do processo agora contm um subn chamado LoanRequestor.wsdl. O Editor de fontes agora contm uma guia do arquivo do esquema XML, LoanRequestor.wsdl, com a exibio WSDL aberta.

Servios de parceiro

O aplicativo de emprstimo se comunica com seus servios de parceiro atravs de suas interfaces pblicas. Essas interfaces so definidas nos arquivos WSDL especficos do parceiro. Este tutorial inclui um projeto J2EE compactado chamado LoanProcessor e as instrues para criar o EJB do zero no Apndice. O projeto LoanRequestor contm uma implementao bsica do EJB de um servio de parceiro. O servio da Web de parceiro deve ser implantado no servidor de aplicativos Sun Java empacotado para que voc possa testar a execuo de LoanRequestorCompositeApp. Essa implementao destina-se somente a servir como um harness de teste do processo do Servio de emprstimos. Para abrir o projeto LoanProcessor: Em seu sistema de arquivos, crie um diretrio chamado LoanTut. Faa download do arquivo loanejb.zip e extraia-o no diretrio LoanTut. No menu principal do IDE, escolha Arquivo > Abrir projeto. O assistente para Abrir projeto aberto. Navegue at o diretrio LoanTut que voc acabou de criar, selecione o projeto LoanProcessor e clique em Abrir pasta do projeto. Uma caixa de dilogo de progresso exibida e, em seguida, o projeto exibido na janela Projetos.

Para implantar o projeto LoanProcessor: Clique com o boto direito do mouse no LoanProcessor e escolha Implantar projeto. Espere at que a mensagem CONSTRUO BEM SUCEDIDA seja exibida na janela Sada. Para verificar se o aplicativo empresarial LoanProcessor foi implantado com xito, alterne para a janela Tempo de execuo. Expanda o n do Servidor de aplicativos Sun Java System, o n Aplicativos e o n Mdulos EJB. O n LoanProcessor deve ser adicionado.

superior Criando o processo BPEL Para criar LoanRequestor.bpel: Na janela Projetos, expanda o n do projeto LoanRequestor, clique com o boto direito do mouse no n Arquivos do processo e selecione Novo > Processo BPEL. O assistente para Novo processo BPEL aberto. No campo Nome do arquivo, digite LoanRequestor. Clique em Finalizar. Na janela Projetos, o n Arquivos do processo agora contm um subn chamado LoanRequestor.bpel. O Editor de fontes contm uma guia do processo BPEL, LoanRequestor.bpel, com a exibio Design do BPEL Designer aberta.

Para adicionar links de parceiro: Na janela Projetos, expanda o n do projeto LoanRequestor, expanda o n Arquivos do processo e selecione o n LoanRequestor.wsdl.

Arraste a sua seleo (LoanRequestor.wsdl) da janela Projetos para a exibio Design. O Editor de propriedades do Partnerlink1 [Link de parceiro] aberto. No campo Nome, digite BpelImplementation. Aceite os padres e clique em OK. Na janela Projetos, expanda o n do projeto LoanProcessor, em seguida, expanda o n Servios da Web e selecione o n do servio da Web LoanProcessor. Arraste a sua seleo (n do servio da Web LoanProcessor) da janela Projetos para a exibio Design. O Editor de propriedades do Partnerlink1 [Link de parceiro] aberto. No campo Nome, digite EjbImplementation. Aceite os padres e clique em OK. Na janela Projetos, em Arquivos do processo, a pasta Parceiros criada. Expanda o n Parceiros, esta pasta contm o n LoanProcessor que inclui arquivos LoanProcessor.wsdl e LoanProcessorService_schema1.xsd.

Para adicionar uma atividade Receber: Na seo Servio da Web da Paleta, selecione o cone Receber e arraste a sua seleo para a rea de design entre as atividades Iniciar e Vazio do processo. O IDE lhe oferece pistas visuais para mostrar onde voc pode soltar a seleo. Esta ao coloca uma atividade Receber chamada Receber1 na exibio Design. Clique duas vezes na atividade Receber1. O Editor de propriedades de Receber1 [Receber] aberto. Altere o valor no campo Nome para ReceiveFromCustomer. Na lista suspensa Link de parceiro, selecione BpelImplementation. O IDE preenche o campo Operao. Crie uma nova varivel de entrada adotando o seguinte procedimento:

Clique no boto Criar ao lado do campo Varivel de entrada. A caixa de dilogo Nova varivel de entrada aberta. Altere o valor no campo Nome para requestLoanInput. Clique em OK. Clique em OK para fechar o Editor de propriedades de Receber1 [Receber]. A atividade Receber agora se chama ReceiveFromCustomer na exibio Design.

Para adicionar uma atividade Chamar: Na seo Servio da Web da Paleta, selecione o cone Chamar e arraste a sua seleo para a rea Design depois da atividade Receber. O IDE lhe oferece pistas visuais para mostrar onde voc pode soltar a seleo. Esta ao coloca uma atividade Chamar de nome Chamar1 na exibio Design. Clique duas vezes na atividade Chamar1. O Editor de propriedades de Chamar1[Chamar] aberto. Altere o valor no campo Nome para InvokeLoanProcessorEJB. Na lista suspensa Link de parceiro, selecione EjbImplementation. O IDE preenche o campo Operao.

Crie uma nova varivel de entrada adotando o seguinte procedimento: Clique no boto Criar ao lado do campo Varivel de entrada. A caixa de dilogo Nova varivel de entrada aberta. Altere o valor no campo Nome para processApplicationInput. Clique em OK. Crie uma nova varivel de sada adotando o seguinte procedimento: Clique no boto Criar ao lado do campo Varivel de sada. A caixa de dilogo Nova varivel de sada aberta. Altere o valor no campo Nome para processApplicationOutput. Clique em OK. Clique em OK para fechar o Editor de propriedades de Chamar1[Chamar]. A atividade Chamar agora se chama InvokeLoanProcessorEJB na exibio Design.

Para adicionar uma atividade Responder: Na seo Servio da Web da Paleta, selecione o cone Responder e arraste a sua seleo para a rea Design depois da atividade Chamar.

O IDE lhe oferece pistas visuais para mostrar onde voc pode soltar a seleo. Esta ao coloca uma atividade Responder chamada Responder1 na exibio Design. Clique duas vezes na atividade Responder1. O Editor de propriedades de Responder1 [Responder] aberto. Altere o valor no campo Nome para ReplyToCustomer. Defina o link de parceiro como BpelImplementation. Crie uma nova varivel de sada adotando o seguinte procedimento: Verifique se a opo Resposta normal est selecionada. Clique no boto Criar ao lado do campo Varivel de sada. A caixa de dilogo Nova varivel de sada aberta. Altere o valor no campo Nome para requestLoanOutput. Clique em OK. Clique em OK para fechar o Editor de propriedades de Responder1 [Responder]. A atividade Responder agora se chama ReplyToCustomer na exibio Design.

Para adicionar a primeira atividade Atribuir:

Na rea Design, selecione a atividade Vazio, clique com o boto direito do mouse e escolha Excluir no menu pop-up. Na seo Atividades bsicas da Paleta, selecione o cone Atribuir e arraste a sua seleo para a rea Design entre as atividades Receber e Chamar. O IDE lhe oferece pistas visuais para mostrar onde voc pode soltar a seleo. Esta ao coloca uma atividade Atribuir chamada Atribuir1 na exibio Design. Selecione a nova atividade Atribuir1. Na janela Propriedades de Atribuir1 [Atribuir], selecione o campo de valor da propriedade Nome para torn-lo editvel, digite AssignReceiveToEJBInput e clique em OK. Se a janela Mapeador BPEL no estiver visvel, escolha Janela > Mapeador BPEL no menu principal. No painel esquerdo do mapeador BPEL, em Variveis, expanda os ns requestLoanInput e requestLoanMessage. socialSecurityNumber, applicantName, applicantAddress, applicantEmailAddress, applicantAge, applicantGender, annualSalary, amountRequested so exibidos em requestLoanMessage. No painel direito do mapeador BPEL, em Variveis, expanda os ns processApplicationInput e Parameters. socialSecurityNumber, applicantName, applicantAddress, applicantEmailAddress, applicantAge, applicantGender, annualSalary, amountRequested so exibidos em parmetros. Arraste socialSecurityNumber do painel esquerdo do mapeador BPEL para o n socialSecurityNumber no painel direito do mapeador BPEL. Repita a etapa 7 para as seguintes variveis: applicantName, applicantAddress, applicantEmailAddress, applicantAge, applicantGender, annualSalary e amountRequested. Para salvar as suas alteraes, na janela Projetos, selecione o n do projeto LoanRequestor, e no menu principal do IDE, escolha Arquivo > Salvar todos.

Para adicionar a segunda atividade Atribuir: Na seo Atividades bsicas da Paleta, selecione o cone Atribuir e arraste a sua seleo para a rea Design entre as atividades Chamar e Responder. Esta ao coloca uma atividade Atribuir chamada Atribuir1 na exibio Design. Selecione a nova atividade Atribuir1. Na janela Propriedades de Atribuir1 [Atribuir], selecione o campo de valor da propriedade Nome para edit-lo, digite AssignEJBOutputToReply e clique em OK. Se a janela Mapeador BPEL no estiver visvel, escolha Janela > Mapeador BPEL no menu principal. No painel esquerdo do mapeador BPEL, em Variveis, expanda os ns processApplicationOutput e parmetros. retorno exibido em parmetros. No painel direito do mapeador BPEL, em Variveis, expanda os ns requestLoanOutput e responsePart. retorno exibido em responsePart.

Arraste retorno do painel esquerdo do mapeador BPEL para o n retorno no painel direito do mapeador BPEL. Para salvar as suas alteraes, na janela Projetos, selecione o n do projeto LoanRequestor, e no menu principal do IDE, escolha Arquivo > Salvar todos.

Para construir o projeto BPEL LoanRequestor: Na janela Projetos, clique com o boto direito do mouse no n do projeto LoanRequestor e escolha Limpar e construir projeto. Se a mensagem CONSTRUO BEM SUCEDIDA for exibida na janela Sada, ento a construo foi bem sucedida.

Criando e implantando o aplicativo composto Antes de implantar o projeto do mdulo BPEL, voc deve adicionar o mdulo JBI ao projeto de implantao. A implantao do projeto torna a composio de servio disponvel no servidor de aplicativos, permitindo, portanto, que suas unidades de servio sejam executadas. Para criar o projeto de aplicativo composto e o mdulo JBI: No menu principal do IDE, escolha Arquivo > Novo projeto. O assistente para Novo projeto aberto. Na lista Categorias, selecione n Service Oriented Architecture. Na lista Projetos, selecione o n Aplicativo composto. Clique em Prximo. No campo Nome do projeto, digite LoanRequestorCompositeApp. Clique em Finalizar. A janela Projetos agora contm um n do projeto de aplicativo composto chamado LoanRequestorCompositeApp. Na janela Projetos, clique com o boto direito do mouse no n do projeto LoanRequestorCompositeApp e escolha Adicionar mdulo JBI no menu pop-up. A caixa de dilogo Selecionar projeto aberta. Selecione o projeto LoanRequestor que voc criou anteriormente neste tutorial e clique em Adicionar arquivos JAR do projeto. A caixa de dilogo Selecionar projeto se fecha. Na janela Projetos, expanda o n do projeto LoanRequestorCompositeApp e, em seguida, expanda o n Mdulos JBI. Observe que um n LoanRequestor.jar foi adicionado.

Para implantar o aplicativo composto: Clique com o boto direito do mouse no n do projeto LoanRequestorCompositeApp e escolha Implantar projeto. Se a mensagem CONSTRUO BEM SUCEDIDA for exibida na janela Sada, ento a implantao foi bem sucedida.

Testando o aplicativo composto Voc pode aprimorar o projeto do aplicativo composto, adicionando casos de teste, vinculando operao, fornecendo sada e usando o testador. Para testar o LoanRequestorCompositeApp: Na janela Projetos, expanda o n do projeto LoanRequestorCompositApp, clique com o boto direito do mouse no n Teste e escolha Novo caso de teste no menu pop-up. O assistente para Novo caso de teste aberto. Para Nome do caso de teste, digite successTest, e clique em Prximo. Na pgina Selecionar o documento WSDL, expanda o n LoanRequestor - Arquivos do processo, selecione LoanRequestor.wsdl e clique em Prximo. Na pgina Selecionar a operao a ser testada, selecione LoanRequestorOperation e clique em Finalizar. Na janela Projetos, em Teste, um novo n successTest foi adicionado. Este n contm dois subns: Input e Output. O Editor de fontes contm uma guia do arquivo de entrada, Input.xml. Se o Editor de fontes no contiver uma guia de Input.xml, clique duas vezes no n Entrada na janela Projetos para abrir o arquivo.

Na guia do Editor de fontes do arquivo Input.xml, adote o seguinte procedimento: Localize a seguinte linha: ?string?. Substitua ?string? por 123-45-6789. A linha deve ficar da seguinte forma: 123-45-6789. Repita as etapas "a" e "b" para substituir elementos nas linhas seguintes: Linha contendo applicantName applicantAddress Substituir ?string? ?string? Por Gopalan 507 Alberta Linha resultante

Gopalan Chamar operao do servio da Web. Na caixa de dilogo Selecionar a opo a ser chamada, expanda o n LoanApplicationWebClient e, em seguida, expanda o n LoanRequestor. Expanda o n LoanRequestorService e, em seguida, expanda o n LoanRequestorPort.

Selecione LoanRequestorOperation e clique em OK.

Para modificar o arquivo loanclient.jsp: Na guia Editor de fontes do arquivo loanclient.jsp, adicione as linhas de cdigo seguintes em // resultado do processo TODO aqui: requestLoanMessage.setSocialSecurityNumber(request.getParameter("cic")); requestLoanMessage.setApplicantName(request.getParameter("nome")); requestLoanMessage.setApplicantAddress(request.getParameter("endereo")); requestLoanMessage.setApplicantEmailAddress(request.getParameter("e-mail")); requestLoanMessage.setApplicantAge(Integer.parseInt(request.getParameter("idade"))); requestLoanMessage.setApplicantGender(request.getParameter("sexo")); requestLoanMessage.setAnnualSalary(Double.parseDouble(request.getParameter("salrio") )); requestLoanMessage.setAmountRequested(Double.parseDouble(request.getParameter("val ordoemprstimo"))); Na guia Editor de fontes do arquivo loanclient.jsp, adote o seguinte procedimento: Localize a seguinte linha: out.println("Result = "+result); Substitua "+result por "+result.getReturn() A linha deve ficar da seguinte forma: out.println("Result = "+result.getReturn()); Adicione a linha de cdigo abaixo em // TODO handle custom exceptions here out.println("===>>>Exception : " + ex.toString()); Adicione a linha de cdigo abaixo em // Para salvar as suas alteraes, na janela Projetos, selecione o n loanclient.jsp, e no menu principal do IDE, escolha Arquivo > Salvar.

Para modificar o arquivo index.jsp: Na janela Projetos, expanda o n do projeto LoanApplicationWebclient e, em seguida, expanda o n Pginas da Web. Clique duas vezes no n index.jsp. O arquivo index.jsp se abre no Editor de fontes. Adicione as linhas de cdigo seguintes antes de CIC Nome Endereo

E-mail Idade Limite de idade : Mn. = 18, Mx. = 65, (Se a idade for superior a 60, as regras do mecanismo BPEL rejeitam o aplicativo) Sexo Salrio Salrio mnimo = 20000,00 Valor do emprstimo Para salvar as suas alteraes, na janela Projetos, selecione o n index.jsp, e no menu principal do IDE, escolha Arquivo > Salvar. Para executar o arquivo index.jsp: Na janela Projetos, expanda o n LoanApplicationWebclient e, em seguida, expanda o n Pginas da Web.

Expanda o n WEB-INF e selecione index.jsp Clique com o boto direito do mouse no arquivo index.jsp e escolha Executar arquivo no menu pop-up. Na janela Sada, o URL que index.jsp est navegando e a mensagem CONSTRUO BEM SUCEDIDA sero exibidos, caso a construo tenha tido xito. Um navegador exibido. Caso no seja, inicie um navegador e digite o URL que est listado na guia LoanApplicationWebclient (executar) da janela Sada. A pgina JSP exibida.

Em seu navegador, na pgina JSP, clique no boto de envio. O status do Aplicativo de emprstimo exibido.

Para criar o projeto EJB Para criar o mdulo EJB: No menu principal do IDE, escolha Arquivo > Novo projeto. Em Categorias, selecione o n Enterprise. Em projetos, selecione o n Mdulo EJB. Clique em Prximo. No campo Nome do projeto, digite LoanProcessor. (Opcional) No campo Local do projeto, use o boto Explorar para navegar e selecionar uma pasta diferente, onde o IDE armazenar os arquivos do projeto EJB. Clique em Finalizar. A janela Projetos agora contm um n de um projeto do mdulo EJB chamado LoanProcessor. Para criar novos servios da Web:

Na janela Projetos, clique com o boto direito do mouse no n LoanProcessor, escolha Novo > Servio da Web no menu de contexto. O assistente para Novo servio da Web se abre. No assistente para Novo servio da Web, adote o seguinte procedimento: Na pgina Nome e local, no campo Nome do servio da Web, digite LoanProcessor. No campo Pacote, digite com.sun.loanprocessor. Clique em Finalizar Na janela Projetos, expanda o n do projeto LoanProcessor e, em seguida, expanda o n Servios da Web. Clique com o boto direito do mouse no n LoanProcessor e escolha Adicionar operao. A caixa de dilogo Adicionar operao aberta. No campo Nome, digite processApplication. Clique no boto Adicionar. A caixa de dilogo Inserir parmetros do mtodo aberta. Na lista suspensa Tipo, selecione String. No Nome, digite socialSecurityNumber. Clique em OK. Repita as etapas 6 a 8 para criar outros seis parmetros com a descrio seguinte: Tipo String String String int String dobro dobro Nome applicantName applicantAddress applicantEmailAddress applicantAge applicantGender annualSalary amountRequested

Clique em OK. Na janela Projetos, expanda o n do projeto LoanProcessor e, em seguida, expanda o n Servios da Web. Expanda o servio da Web LoanProcessor e clique duas vezes no n processApplication. Observe que o Editor de fontes contm uma guia com um esqueleto do mtodo processApplication, LoanProcessor.java. Copie o corpo do mtodo abaixo e cole-o na guia Editor de fontes do arquivo LoanProcessor.java, imediatamente sob a assinatura do seu mtodo gerado automaticamente, para alterar a operao processApplication para o seguinte: public String processApplication(@WebParam(name = "socialSecurityNumber") String socialSecurity, @WebParam(name = "applicantName")String applicantName, @WebParam(name = "applicantAddress") String applicantAddress, @WebParam(name = "applicantEmailAddress")String applicantEmailAddress, @WebParam(name = "applicantAge") int applicantAge, @WebParam(name = "applicantGender")String applicantGender,

@WebParam(name = "annualSalary") double annualSalary, @WebParam(name = "amountRequested")double amountRequested) { int MINIMUM_AGE_LIMIT = 18; int MAXIMUM_AGE_LIMIT = 65; double MINIMUM_SALARY = 20000; int AVERAGE_LIFE_EXPECTANCY = 70;

String result = "Aplicativo de emprstimo APPROVADO.";

if(applicantAge < MINIMUM_AGE_LIMIT) { result = "Aplicativo de emprstimo REJEITADO - Motivo: menor de idade "+applicantAge+". necessrio ter mais de "+MINIMUM_AGE_LIMIT+" anos para cumprir o requisito."; System.out.println(result); return result; }

if(applicantAge > MAXIMUM_AGE_LIMIT) { result = "Aplicativo de emprstimo REJEITADO - Motivo: idade avanada "+applicantAge+". necessrio ter menos "+MAXIMUM_AGE_LIMIT+" anos para cumprir o requisito."; System.out.println(result); return result; }

if(annualSalary < MINIMUM_SALARY) {

result = "Aplicativo de emprstimo REJEITADO - Motivo: salrio anual de $"+annualSalary+" muito baixo. O salrio anual deve ser mais de $"+MINIMUM_SALARY+" para cumprir o requisito."; System.out.println(result); return result; }

int yearsToRepay = AVERAGE_LIFE_EXPECTANCY-applicantAge; double limit = annualSalary*yearsToRepay*0.5; if(amountRequested > limit) { result = "Aplicativo de emprstimo REJEITADO - Motivo: o valor solicitado muito alto $"+amountRequested+". Salrio anual de $"+annualSalary+", "+applicantAge+" anos de idade. O seu limite de $"+limit; System.out.println(result); return result; } System.out.println(result); return result; } Para salvar as suas alteraes, no menu principal do IDE, escolha Arquivo > Salvar.