Ferramentas da Web - Notas sobre o Release

1.0 Introdução
2.0 Alterações do Release Anterior
3.0 Limitações
   3.1 Função de Seleção de Cor no Sistema de Janelas GTK
   3.2 Não É Possível Utilizar DBCS Kanji Utilizando a Janela Candidate no Web Site Designer
   3.3 Casos nos quais um Gabarito de Página Será Aplicado a uma Página da Web
4.0 Problemas Conhecidos
   4.1 O JSP Validator Não Compila Automaticamente em Alterações Java Dependentes
   4.2 Dica de Desempenho: Fechar Projetos Inativos
   4.3 Dica de Desempenho: Desativar a Validação Automática
   4.4 Arquivos Não São Criados Pelos Assistentes Web Tooling em Pastas Somente Leitura no Linux
   4.5 Limitação de Personalização do Menu Page Designer Toolbar
   4.6 Aviso de Link Interrompido em Applets
   4.7 Inserindo Applets nos Arquivos HTML e JSP Utilizando o Page Designer
   4.8 Considerações sobre Lançamento de Tipo para Código Criado com o Assistente Database Web Pages
   4.9 Os JSPs Devem Utilizar Instruções Import Explícitas
   4.10 Migrando Dados Relacionais em Projetos da Web do 4.0.3
   4.11 JSPs e Servlets Java que São Projetados em um Ambiente DBCS para Um Nível J2EE 1.3 no Servidor WebSphere 5 Exigem um Snippet de Código Extra
   4.12 Arrastando e Soltando Itens em Exibição Quick Edit
   4.13 Utilizando Itens da Exibição Snippet com Ações Simples na Exibição Quick Edit
   4.14 Suporte a Linguagem Mobile para o Page Designer
   4.15 Suporte a Gabaritos de Páginas para o Page Designer
   4.16 Notas para Utilização das Partes do Site com o Web Site Designer
   4.17 Exibindo Sinais de Euro na Página Design do Page Designer no Motif
   4.18 Dando um Clique Duplo nas Propostas de Assistência de Conteúdo no Locale DBCS
   4.19 Anotações de Pesquisa em Arquivos Não-salvos em Editores
   4.20 Restrições do ClearCase Utilizando o Designer de Web Site ou Gabaritos de Páginas
   4.21 Problema de Envio de Formulário Javascript em JSPs Gerados pelo Assistente Database Web Pages

1.0 Introdução

O ambiente de desenvolvimento da Web no WebSphere Studio fornece as ferramentas necessárias para desenvolver os aplicativos da Web.  Os aplicativos da Web incluem páginas estáticas da Web, JSPs (JavaServer Pages), Java Servlets, um descritor de implementação XML (web.xml) e outros recursos da Web.   O arquivo readme descreve os problemas conhecidos, limitações e as soluções alternativas que estão associadas às ferramentas utilizadas no ambiente de desenvolvimento da Web.

2.0 Alterações do Release Anterior

Os nomes de pastas Web Content e Java Source de um projeto da Web agora podem ser configurados. Os nomes padrão são WebContent e JavaSource; no entanto, os nomes padrão para novos projetos da Web podem ser alterados na página Web Tools->New Project Preferences. As pastas de projetos existentes podem ser renomeadas utilizando o Navigator.
NOTA: Os nomes das pastas além dos padrão não são compatíveis com o WebSphere Studio Versão 5.0.0. Não altere os nomes padrão se precisar manter compatibilidade do espaço de trabalho com a versão 5.0.0.

Duas novas exibições foram adicionadas na perspectiva Web para auxiliar a edição de páginas HTML/JSP. A exibição Palette contém um conjunto de itens que podem ser arrastados e soltos sobre uma página da Web no Page Designer. A exibição Quick Edit permite que os usuários adicionem/editem scripts e scripts de eventos de marcação no Page Designer. Para obter detalhes adicionais, consulte o sistema Help.

3.0 Limitações

3.1 Função de Seleção de Cor no Sistema de Janelas GTK

Você pode coletar uma cor na tela na exibição Colors, Attributes e Styles; no entanto, essa função não funciona nos sistemas de janelas GTK. Selecione o sistema de janelas Motif se quiser utilizar a função de seleção de cor.

3.2 Não É Possível Utilizar DBCS Kanji Utilizando a Janela Candidate no Web Site Designer

No Web Site Designer, ao utilizar a janela candidate de 'canna' para editar campos de texto, a inserção de DBCS KANJI falha.
Para evitar esse problema, utilize 'Wnn' em vez de 'canna'. Consulte o manual de instalação do sistema operacional para obter informações adicionais.

3.3 Casos nos quais um Gabarito de Página Será Aplicado a uma Página da Web

Há várias circunstâncias que podem fazer com que um gabarito de página não seja aplicado em uma página da Web quando qualquer um dos assistentes para gabarito de página for utilizado:

4.0 Problemas Conhecidos

4.1 O JSP Validator Não Compila Automaticamente em Alterações Java Dependentes

O JSP validator não revalidará automaticamente um arquivo JSP quando uma classe Java a qual ele faz referência é alterada. O JSP validator pode ser executado novamente no arquivo selecionando-o no Project Navigator e selecionando Run Validation no menu de contexto.

4.2 Dica de Desempenho: Fechar Projetos Inativos

É recomendável fechar quaisquer projetos com os quais não esteja trabalhando para melhorar o desempenho. Somente projetos abertos são recompilados quando Rebuild All é executado.

4.3 Dica de Desempenho: Desativar Validação Automática

Por padrão, os validadores são automaticamente executados quando você salva recursos em um projeto Web. Se não desejar que os validadores executem automaticamente quando você salvar esses recursos, abra o diálogo Properties do projeto Web a partir do menu de contexto na exibição J2EE Navigator. Em seguida, ative a opção Override validation preferences e desative a opção Run validation automatically when you save changes to resources na página Validation. Você também pode desativar a validação automática (e construções) para todos os projetos, selecionando Window > Preferences e desativando Perform build automatically on resource modification na página Workbench. Se você desativar as construções automáticas, poderá executar manualmente uma construção (e validação), selecionando Project > Rebuild Project.

4.4 Arquivos Não São Criados pelos Assistentes Web Tooling em Pastas Somente Leitura no Linux

Os arquivos não são gerados e nenhuma mensagem de erro é fornecida quando você tenta criar arquivos em uma pasta somente leitura no Linux.

4.5 Limitação de Personalização do Menu Page Designer Toolbar

Depois de personalizar a barra de ferramentas utilizando o diálogo Customize Perspective (acessado selecionando Window > Customize Perspective), o menu Page Designer Toolbar não poderá ser utilizado para personalizar outra barra de ferramentas. Nesse caso, você deve utilizar o diálogo Customize Perspective para personalizar quais itens da barra de ferramentas devem ser exibidos.

4.6 Aviso de Link Interrompido em Applets

LinksBuilder pode sinalizar incorretamente o valor do atributo de código de um applet como um link inválido se um nome de classe Java completo for utilizado:

<applet code="aaa.bbb.AnApplet" codebase="MyApplets">
Esse aviso pode ser seguramente ignorado e não afeta o comportamento do applet quando ele é executado no servidor.

Esse aviso pode ser evitado utilizando um separador de caminho ('/'), em vez do separador ('.') e assegurando que a extensão .class seja explicitamente especificada. Exemplo:

<applet code="aaa/bbb/AnApplet.class" codebase="MyApplets">

4.7 Inserindo Applets em Arquivos HTML e JSP Utilizando o Page Designer

A pasta Java source (por padrão, JavaSource) de um projeto da Web destina-se a classes do lado do servidor, portanto, o código fonte para applets não pode ser colocado nessa pasta. Portanto, recomenda-se o seguinte ao desenvolver applets:

  1. Crie um projeto Java para applets e crie as classes de applet no projeto.
  2. Copie os arquivos de classe de applet para a pasta Web content (por padrão, WebContent) de um projeto da Web. Não os copie para a pasta WEB-INF, porque essa pasta destina-se apenas a classes do lado do servidor (para ver os arquivos de classe, você precisará alterar os filtros da exibição Project Navigator, selecionando Filters na lista drop-down do botão Menu da exibição).
  3. Insira um applet em uma página da Web, selecionando Inserir > Outros > Java Applet no Page Designer. Nesse ponto, você deve definir os atributos code e codebase apropriados.

    Por exemplo, se a sua classe de applet for aaa.bbb.AnApplet e a estrutura de arquivos for a seguinte:

     WebContent/index.html
    WebContent/MyApplets/aaa/bbb/AnApplet.class
    code is "aaa.bbb.AnApplet"

    a marcação de applet no index.html deverá conter:

    codebase is "MyApplets"

4.8 Considerações sobre Combinação de Tipos para Código Criado com o Assistente Database Web Pages

No assistente para Database Web Pages, utilizando o IBM Data Access Beans - Master Details Pattern, alguns bancos de dados têm problemas ao executar o lançamento interno de Cadeias para o Tipo de Dados apropriado. Por exemplo, Oracle 8.17i não lançará números a partir de cadeias.

Para corrigir isso no arquivo $Prefix$ViewBean.java gerado para cada consulta DataAccess, será necessário fazer uma alteração no método prepareStatement().

Para o código semelhante a este:
//Add parameters descriptions to meta
data.DBParameterMetaData metaData = getDBSelect().getParameterMetaData();
metaData.setParameter(1, PARAM1_NAME, DatabaseMetaData.procedureColumnIn,
java.sql.Types.DECIMAL,
java.lang.String.class);

// Set parameters.
getDBSelect().setParameter(PARAM1_NAME, inSAL);

Será necessário alterá-lo para:
//Add parameters descriptions to meta data.
DBParameterMetaData metaData = getDBSelect().getParameterMetaData();
metaData.setParameter(1, PARAM1_NAME, DatabaseMetaData.procedureColumnIn,
java.sql.Types.DECIMAL,
java.math.BigDecimal.class);

// Set parameters.
getDBSelect().setParameterFromString(PARAM1_NAME, inSAL);
Você precisa indicar aos Metadados do Parâmetro qual tipo de objeto Java é esperado pelo banco de dados. Em seguida, utilize o método setParmeterFromString em vez do método setParameter na instância DBSelect. Isso indicará ao objeto DBSelect para executar a conversão de tipo em vez de seu Banco de Dados.

4.9 As JSPs Devem Utilizar Instruções Import Explícitas

Os arquivos JSp devem utilizar o atributo 'import' da diretriz page para descrever os tipos que estão disponíveis para o ambiente de script naquela página. Alguns tipos podem ter sido importados implicitamente em arquivos JSP contidos em projetos do J2EE1.2, mas mostrarão erros se utilizados em um projeto do J2EE1.3. Para evitar esse problema, os tipos devem ser sempre importados explicitamente na página JSP (a menos que o tipo esteja incluído na lista de importação padrão: java.lang.*, javax.servlet.*, javax.servlet.jsp.* e javax.servlet.http.*).

4.10 Migrando Dados Relacionais de Projetos da Web 4.0.3

Para migrar dados relacionais de projetos do WebSphere Studio 4.0.3, será necessário fazer o seguinte.

  1. Em um espaço de trabalho 4.0.3, gere arquivos DDL para cada banco de dados disponível.
  2. Remova o banco de dados da pasta Web Project source/databases (através da exibição Data Definition)
  3. Abra o espaço de trabalho 4.0,3 com o WebSphere Studio Versão 5.
  4. Migre os projetos da Web para os quais deseja restaurar os dados relacionais.
  5. Clique em File > Import > File System e especifique os arquivos DDL de seu espaço de trabalho 4.0.3.
  6. Na exibição Data Definition da Perspectiva Data, selecione Run against Local e especifique o projeto da Web de destino.

Os artefatos dos dados relacionais serão restaurados.

4.11 JSPs e Servlets Java que São Projetados em um Ambiente DBCS para Um Nível J2EE 1.3 no Servidor WebSphere 5 Exigem um Snippet de Código Extra

Esta entrada aplica-se a Servlets JSPs e Java que são projetados em um ambiente DBCS para um nível J2EE 1.3 no servidor WebSphere 5. O snippet de código a seguir deve ser incluído na origem antes de qualquer parâmetro ou atributo de pedido ser acessado:

  if(request.getCharacterEncoding() == null){  
request.setCharacterEncoding(<encoding>); // typically this would be the encoding of the JSP or servlet
}
//...normal jsp/servlet code which access request objects like
// <%=request.getParameter("message")%>

Se o procedimento acima não for realizado e o pedido não incluir informações de codificação, todos os parâmetros de pedidos devem ser analisados em ISO-8859-1, portanto, se qualquer parâmetro de entrada incluir caracteres DBCS, eles serão exibidos incorretamente.

4.12 Arrastar e Soltar Itens na Exibição Quick Edit

Antes de arrastar e soltar itens ou texto da exibição Snippets ou Palette na exibição Quick Edit, primeiro certifique-se de que a exibição Quick View esteja limpa da instrução "Insert an action/code snippet".

4.13 Utilizando Itens da Exibição Snippet com Ações Simples na Exibição Quick Edit

Para cada item JavaScript da exibição Snippet, há uma ação simples correspondente disponível na exibição Quick Edit. Na exibição Quick Edit, não se recomenda combinar a utilização de ações simples com itens da exibição Snippets no mesmo script de eventos. Se os itens precisarem ser combinados, tome cuidado com o posicionamento do item de Snippet. Arrastar e soltar itens da exibição Snippets para a exibição Quick Edit quando o editor já tiver ações simples pode fazer com que o item Snippet seja inserido no lugar errado. Se isso ocorrer, exclua e insira a ação simples novamente.

4.14 Suporte a Linguagem Mobile para o Page Designer

Atributos não suportados em linguagens móveis, como cHTML ou WML, podem ser inseridos através do diálogo Insert ou da exibição Attributes.
No entanto, a validade do código pode ser verificada utilizando Tools > Validate HTML Syntax para um documento cHTML ou Tools > Validate WML Syntax para um documento WML.

4.15 Suporte a Gabaritos de Páginas para o Page Designer

Os gabaritos de página são suportados somente pelo Page Designer, não pelo Page Designer Classic. Você pode utilizar o Page Designer para editar uma página HTML/JSP utilizando a função Page template.

4.16 Notas para Utilização das Partes do Site com o Web Site Designer

4.17 Exibindo Sinais de Euro na Página Design do Page Designer no Motif

O Page Designer não pode exibir os símbolos do euro na página Design quando estiver em execução em um sistema Motif. Para exibir o símbolo, um sistema GTK deve ser utilizado.

4.18 Dando um Clique Duplo nas Propostas de Assistência de Conteúdo no Locale DBCS

Ao utilizar Linux (Motif ou GTK) e um locale DBCS, dar um clique duplo na lista de assistentes de conteúdo pode, às vezes, fazer com que a Java VM seja encerrada. Em vez de dar um clique duplo na lista, utilize as teclas de setas e Enter para fazer a seleção na lista.

4.19 Anotações de Pesquisa em Arquivos Não-salvos em Editores

No Source Editor e na página Source de editores de várias páginas, como o XML Editor, a função de pesquisa funciona a partir do recurso salvo no sistema de arquivos ao invés de a partir do conteúdo do editor. As anotações de pesquisa de qualquer editor não-salvo podem não ser confiáveis. Para evitar esse problema, salve o arquivo antes de fazer uma pesquisa.

4.20 Restrições do ClearCase Utilizando o Designer de Web Site ou Gabaritos de Páginas

Se utilizar o Web Site Designer para trabalhar em um projeto da Web, você deverá primeiro assegurar que os arquivos de projetos, como arquivos html ou jsp e arquivos relacionados tenham saída registrada do repositório do ClearCase.

Além disso, se utilizar gabaritos de páginas em seu projeto da Web, você deverá primeiro verificar os arquivos apropriados fora do ClearCase.

4.21 Problema de Envio de Formulário Javascript em JSPs Gerados pelo Assistente Database Web Pages

Em alguns JSPs gerados pelo assistente Database Web Pages, especialmente os denominados '***MasterView.jsp'

os links na página denominados 'Back', 'Refresh' & outros podem não funcionar em todos os navegadores. Foram observados problemas em alguns navegadores, especialmente o Mozilla & Konqueror.

Para corrigir o problema para a maioria dos navegadores, altere o código Javascript para a função denominada 'submitForm' no JSP.

Altere a variável 'document.<formName>.elements.action' no método para 'document.<formName>.action'.

Por exemplo function submitForm(nav){ if(nav == 'SCHEMA_TABLEInputForm'){ document.myForm.elements.action = "/Web3/SCHEMA_TABLEInputForm.html"; } else if(nav == 'SCHEMA_TABLEMasterView'){ document.myForm.elements.action = "/Web3/SCHEMA_TABLEMasterView"; } else{ document.myForm.elements.action = "/Web3/SCHEMA_TABLEDetailsView"; }

torna-se

function submitForm(nav){ if(nav == 'SCHEMA_TABLEInputForm'){ document.myForm.action = "/Web3/SCHEMA_TABLEInputForm.html"; } else if(nav == 'SCHEMA_TABLEMasterView'){ document.myForm.action = "/Web3/SCHEMA_TABLEMasterView"; } else{ document.myForm.action = "/Web3/SCHEMA_TABLEDetailsView"; }

Retornar para o arquivo Leia-me principal