O aplicativo My Company Directory exibe uma lista de todos os registros de funcionários atuais no diretório. Os registros são exibidos em um JTable (employeesTable) como colunas ordenadas, incluindo o último nome, primeiro nome, e-mail e ID do funcionário. Para obter os registros para a tabela, você precisa ligar a employeesTable em um objeto de dados retornado pela origem de dados do serviço da Web de amostra.
Para obter o objeto de dados local para employeesTable trabalhar, você utilizará o editor visual para incluir uma origem de dados ao aplicativo. A origem de dados conecta-se a um proxy de serviço da Web de amostra e descobre os métodos de serviço disponíveis para o aplicativo. Em seguida, você escolherá o método de serviço getLightEmployeeRecord, disponível da origem de dados. Finalmente, você ligará employeesTable em seu aplicativo aos campos retornados no objeto de dados da linha (lightEmployeeRecordRows).
É possível criar todas essas origens de dados e objetos de dados rapidamente e com facilidade, utilizando as classes de binder internas do Java Visual Editor. O visual editor fornece um conjunto de interfaces e classes genéricas, geradas no projeto ao ligar os componentes visuais aos depósitos de informações do provedor de dados. As classes de binder são geradas por padrão em um pacote denominado jve.generated. O visual editor fornece as classes de binder como uma implementação genérica, que pode ser personalizada e aprimorada adicionalmente para corresponder às necessidades do aplicativo. Este tutorial demonstra a força e a flexibilidade da utilização, mesmo que básica e simples, das classes de binder padrão.
Para este tutorial, você utilizará uma origem de dados do serviço da Web, diversos tipos de objetos de dados e vários binders em seu aplicativo. Ao incluir instâncias desses objetos em seu aplicativo, o editor visual inclui classes necessárias no pacote jve.generated em seu projeto, onde você possa estender, substituir ou reescrever a lógica da ligação de dados. O Java Visual Editor fornece suporte visual a objetos de ligação, mostrando na área livre da visualização de design os objetos e as origens de dados e conectores que seu aplicativo está utilizando. O visual editor traça linhas entre os componentes, os objetos de dados e as origens de dados para mostrar as ligações atuais a qualquer objeto selecionado.
O diagrama a seguir é uma visão geral simples de como os componentes visuais, binders, objetos de dados e origens de dados interagem. O aplicativo construído neste tutorial ilustra uma utilização um pouco mais complexa e criativa dos binders. Este diagrama não representa exatamente os binders, objetos e origens de dados no aplicativo de amostra em construção.
Na Figura 1, cada componente visual possui seu próprio binder, que o associa a um objeto de dados ou, no caso do botão, a uma origem de dados. Os binders para os campos de texto ligam o campo a uma propriedade específica do objeto de dados. Tanto o objeto de dados de linha quanto o objeto de dados neste diagrama obtêm seus dados de chamadas diretas a um serviço na origem de dados. O objeto de dados para os campos de texto utiliza um valor chave a partir da linha selecionada na tabela como seu argumento para chamar Service2, o que retorna um registro completo que, presumidamente, inclui informações adicionais sobre a linha selecionada na tabela. Esse registro completo, por sua vez, é utilizado como argumento para o binder de ação do botão ao chamar Service3, que pode ser um método que atualiza os valores digitados nos campos. Para obter explicações detalhadas dos objetos, binders e origens de dados, siga os links fornecidos anteriormente.
Para trabalhar com o serviço da Web em execução em um servidor, o aplicativo Java requer um proxy Java ou cliente com o qual interagir. Utilizando um arquivo WSDL, é possível gerar um proxy Java no projeto Java, utilizando o assistente Cliente de Serviço da Web. O projeto MyDirectory inclui o arquivo EmployeeDirectory.wsdl, que será utilizado para gerar esse proxy. Após gerar o proxy Java, é possível criar uma origem de dados que representa o serviço da Web e inicia a ligação dos componentes visuais.
Para gerar o proxy Java de serviço da Web no projeto:
Como employeesTable é o primeiro componente visual sendo ligado neste aplicativo, é necessário criar uma origem de dados que aponte ao proxy do serviço da Web de amostra, incluído no projeto. Quando você ligar outros componentes visuais em exercícios posteriores, você reutilizará a origem de dados. Nesta etapa, você inclui a origem de dados do serviço da Web e o objeto de dados lightEmployeeRecordRows.
Avisa as alterações ao projeto e aplicativo. Durante essa lição, você incluiu a origem de dados do serviço da Web, um objeto de dados de linha e um binder que liga employeesTable ao objeto de dados de linha.
Agora, quando você executa o aplicativo My Company Directory, a tabela de funcionários é preenchida pelo serviço da Web com os registros de funcionário existentes.