Comando wsmapping

A ferramenta wsmapping é utilizada para fornecer mapeamento completo do modelo de objeto da entidade para o modelo relacional de banco de dados. Você pode utilizá-la para criar tabelas de bancos de dados.

Sintaxe

Antes de executar o comando, você deve ter uma cópia de persistence.xml no caminho da classe ou especificá-lo como um arquivo de propriedades no argumento -p [path_to_persistence.xml]. Emita o comando a partir do subdiretório bin do diretório profile_root.

A sintaxe do comando é a seguinte:

[AIX][HP-UX][Linux][Solaris][z/OS]
wsmapping.sh [options][arguments]
[IBM i]
wsmapping [options][arguments] 
[Windows]
wsmapping.bat [options][arguments]

Parameters

A ferramenta de mapeamento aceita o conjunto padrão de argumentos da linha de comandos definidos pela estrutura de configuração com as seguintes opções:
  • -schemaAction/-sa <add | refresh | drop | build | reflect | retain | createDB | import | export | none>: A ação para implementar com relação ao esquema.

    Essas opções correspondem às ações da ferramenta de esquema. Add será a ação padrão se nada estiver especificado. As ações podem ser compostas em uma lista separada por vírgulas.

    Nota: A ferramenta wsmapping aceita o sinalizador -action/-a para especificar a ação a ser executada em classes individuais. A menos que você esteja executando wsmapping em todos seus tipos persistentes de uma vez, ou eliminando um mapeamento, deverá usar a ação add ou a ação build padrão. Caso contrário, poderá eliminar acidentalmente componentes do esquema utilizados pelas classes nas quais a ferramenta não estiver sendo executada no momento.
  • -schemaFile/-sf <true/t | false/f>: Esta opção pode ser usada para gravar o esquema planejado em um documento XML em vez de modificar o banco de dados.

    O documento XML pode ser modificado, manipulado e confirmado para o banco de dados com a ferramenta de esquema.

  • -sqlFile/-sql <stdout | output file>: Esta opção pode ser usada para gravar as modificações do esquema planejado em um script SQL em vez de modificar o banco de dados.

    Combine esse parâmetro com um schemaAction de build para gerar um script que recrie o esquema para os mapeamentos atuais, mesmo se o esquema existir.

  • -dropTables/-dt <true/t | false/f>: Quando esta opção for configurada como true, o esquema descartará tabelas que parecem não ser utilizadas durante as ações retain e refresh.

    O padrão é true.

  • -dropSequences/-dsq <true/t | false/f>: Se essa opção for configurada para true, o esquema eliminará as sequências que não são usadas durante as ações retain e refresh.

    O padrão é true.

  • -openjpatables/-ot <true/t | false/f>: Ao refletir o esquema, este parâmetro determina se refletirá as tabelas e sequências com nomes que começam com OPENJPA_.

    Determinados componentes OpenJPA usam essas tabelas e sequências, como o factory de esquema de tabela. Ao usar outras ações, o parâmetro openjpaTables controla se essas tabelas poderão ser eliminadas ou não. A configuração padrão é false.

  • -ignoreErrors/-i <true/t | false/f>: Se configurado para false, uma exceção ocorrerá se a ferramenta encontrar erros de banco de dados.

    O padrão é configurado para false.

  • -schemas/-s <schema list>: Indica uma lista de nomes de esquemas e tabelas que o OpenJPA deve acessar ao executar a ferramenta wsschema.

    Isso equivale a configurar a propriedade openjpa.jdbc.Schemas para ser executada uma vez. Esse parâmetro corresponde ao parâmetro -schemas/-s na ferramenta wsschema. Essa opção será ignorada se -readSchema/-rs não estiver configurado para true.

  • -readSchema/-rs <true/t | false/f>: Configure essa opção para true para ler o esquema existente inteiro quando a ferramenta de mapeamento for executada.

    A leitura do esquema existente assegura que a OpenJPA não gere mapeamentos que utilizem os nomes da tabela, do índice, da chave primária ou da chave estrangeira que causem conflitos com nomes existentes.

    Nota: Dependendo do driver JDBC específico, a seleção da função -readSchema/-rs pode reduzir a velocidade do processo para grandes esquemas.
  • -primaryKeys/-pk <true/t | false/f>: Este sinalizador determina se as chaves primárias podem ser manipuladas em tabelas existentes.

    O padrão é true.

  • -foreignKeys/fk <true/t | false/f>: Este sinalizador determina se as chaves estrangeiras podem ser manipuladas em tabelas existentes.

    O padrão é true. Isso significa que para incluir uma nova chave estrangeira a uma classe que já foi mapeada, você deve configurar explicitamente esse sinalizador de parâmetro para true.

  • -indexes/-ix <true/t | false/f>: Este sinalizador determina se os índices podem ser manipulados em tabelas existentes.

    O padrão é true. Isso significa que para incluir novos índices a uma classe que já foi mapeada, você deve configurar explicitamente esse sinalizador de parâmetro para true.

  • -sequences/-sq <true/t | false/f>: Este sinalizador determina se as sequências podem ser manipuladas.

    O padrão é true.

  • -meta/-m <true/t | false/f>: Esse sinalizador determina se um mapeamento se aplica aos metadados em vez dos, ou além dos, mapeamentos padrão.
  • A ferramenta wsmapping aceita o sinalizador -action/-a para especificar a ação a ser executada em cada classe. Várias ações podem ser compostas em uma lista separada por vírgulas. As ações disponíveis são:
    • buildSchema: Essa é a ação padrão. A ação buildSchema faz com que o esquema do banco de dados corresponda aos mapeamentos existentes. Se os mapeamentos fornecidos causarem conflitos com as definições de classes, OpenJPA falhará com uma exceção informativa.
    • validate: Assegure-se de que os mapeamentos das classes especificadas sejam válidos e que correspondam ao esquema do banco de dados. Os mapeamentos de tabelas não são alterados como resultado dessa ação. Uma exceção ocorrerá se qualquer mapeamento for inválido.
Cada argumento adicional para a ferramenta wsmapping deve ser um dos seguintes:
  • O nome completo de uma classe persistente.
  • O nome .java de uma classe persistente.
  • O arquivo .class de uma classe persistente.

Se você não fornecer argumentos para a ferramenta wsmapping, ela será executada nas classes da lista de classes persistente.

Uso

Antes de executar a ferramenta wsmapping, deverá configurar as informações de origem de dados, incluindo a URL, o usuário e a senha. É necessário que a ferramenta wsenhancer seja executada antes que a ferramenta wsmapping insira bytecode nas classes de entidade. Além disso, os arquivos de classe compilados para suas entidades devem estar no caminho de classe. Suponha que os arquivos de classe de entidade possam ser localizados em target/classes, por exemplo:

[AIX][HP-UX][Linux][AIX HP-UX Solaris][Solaris][z/OS]
export CLASSPATH=${CLASSPATH}:target/classes 

wsmapping.sh ...
[IBM i]
export CLASSPATH=${CLASSPATH}:target/classes 

wsmapping ...
[Windows]
SET CLASSPATH=%CLASSPATH%;target\classes  

wsmapping.bat . . .

Para criar tabelas, execute o comando wsmapping a partir do diretório ${profile_root}/bin. Na conclusão, as tabelas de bancos de dados serão criadas ou atualizadas. As mensagens e os erros são registrados no console administrativo, conforme especificado pelas configurações de log.

wsmapping.sh . . . No Windows:

Dica: Ao especificar o parâmetro buildSchema para a propriedade openjpa.jdbc.SynchronizeMappings, a ferramenta de mapeamento fornecerá o mapeamento padrão correspondente ao esquema de banco de dados automaticamente. Não será necessário executar essa ferramenta de mapeamento se o mapeamento padrão satisfizer o esquema de banco de dados necessário.

Exemplos

Para criar as tabelas de banco de dados necessárias para o arquivo Magazine.java:

[AIX][HP-UX][Linux][Solaris][z/OS]
${profile_root}/bin/wsmapping.sh Magazine.java
[IBM i]
${profile_root}/bin/wsmapping Magazine.java
[Windows]
${profile_root}\bin\wsmapping.sh Magazine.java

Para descartar as tabelas para Magazine.java:

[AIX][HP-UX][Linux][Solaris][z/OS]
C:\> %profile_root%/bin/wsmapping.sh -sa dropDB Magazine.java
[IBM i]
C:\> %profile_root%/bin/wsmapping -sa dropDB Magazine.java
[Windows]
C:\> %profile_root%\bin\wsmapping.bat -sa dropDB Magazine.java

Para validar os mapeamentos para todas as classes no caminho de classe:

[AIX][HP-UX][Linux][Solaris][z/OS]
C:\> %profile_root%/bin/wsmapping.sh -a validate
[IBM i]
C:\> %profile_root%/bin/wsmapping -a validate
[Windows]
C:\> %profile_root%\bin\wsmapping.bat -a validate

Informações adicionais

Consulte as informações de mapeamento no Guia do Usuário do Apache OpenJPA para obter mais informações e exemplos.


Ícone que indica o tipo de tópico Tópico de Referência



Ícone de registro de data e hora Última atualização: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rejb_wsmapping
Nome do arquivo: rejb_wsmapping.html