WebSphere Product Center: WebSphere Commerce Integration
Versão 5.2
Nota! Antes de utilizar estas informações e o produto ao qual elas oferecem suporte, leia as informações em "Avisos" no final deste documento.
23 de março de 2005
Esta edição deste documento aplica-se ao WebSphere Product Center, versão 5.2 (5724-I68), e a todos os releases e modificações subseqüentes, até que seja indicado de outra forma em novas edições.
Copyright International Business
Machines Corporations 2005. Todos os direitos reservados.
Direitos Restritos para Usuários do Governo dos Estados Unidos - Uso,
duplicação e divulgação restritos pelo documento GSA ADP Schedule Contract
com a IBM Corp.
Design do Aplicativo
Scripts Personalizados do Product Center
Cap.3 - Integração com o WebSphere Commerce
Configuração do Commerce
Exportando Dados do WC para o Commerce
Configuração para Visualizar
Configuração do Product Center
Exportação Completa
Exclusão de Exportação Delta
Atualização de Exportação Delta
Apêndice A - Referência do Modelo de Dados
Objetos do Commerce
Objetos do Product Center Relacionados ao Commerce
A integração do Commerce fornece uma fundação de clientes para estabelecer um ambiente de autoria abrangente e altamente produtivo, para obter informações do produto de seus Web sites do e-commerce B2B (Business to Business (B2B) e B2C (Business to Consumer). O WebSphere Product Center (daqui em diante chamado de Product Center) pode aumentar muito o valor das implementações de e-commerce, aprimorando bastante o preparo de informações do produto valiosas e precisas para publicação.
Em combinação com uma plataforma e-commerce, ele fornece ferramentas para planejar as contribuições de vários usuários através de funções para vários processos do Commerce. Também oferece recursos e capacidades para simplificar significativamente a agregação, o avanço, o gerenciamento e a aprovação de grandes quantidades de informações complexas do produto.
Os processos de negócios suportados incluem: novas introduções do produto; criação de cross-sells, up-sells e promoções; duração do produto; informações de sincronização de item; uploads em massa de itens e seus atributos para um Web site e informações de sindicato do produto para vários pontos de contato do cliente, além de Web sites do e-commerce.
A integração do Commerce Server inclui:
A modelagem de dados básica do Product Center que inclui representações para os objetos do catálogo do Commerce, como Categorias, Produto, Grupos de Produtos, SKUs, etc.
Exportação completa dos dados do catálogo além de alterações delta no aplicativo Commerce
Visualização de um item no Product Center clicando em uma opção de menu de visualização, com telas do Commerce, e navegação no aplicativo Commerce para ver todos os objetos de catálogo relacionados a ele
WebSphere Product Center 5.2
Integração com o WebSphere Commerce 5.6 versão com DB2 II versão 8.2
Pacote desenvolvido para ativar a integração do Commerce com o Product Center é um arquivo zip <WPC_WC_Int.zip>, que contém o seguinte:
Arquivo de filtro
Arquivo Jar contendo as classes de comando <WPC_WC.jar>
LEIA-ME.txt
Os dados do produto definidos no Product Center e carregados no Commerce contêm inventário padrão. O usuário precisaria utilizar o Commerce Suite Accelerator para alterá-los.
A troca de dados entre o Product Center e o Commerce é baseada em documentos XML. A equipe do Commerce deverá fornecer o DTD da ferramenta mais recente de upload em massa. Os scripts do Product Center são utilizados para criar documentos XML, que podem ser validados junto ao Commerce DTD e transferidos por FTP para um só local predefinido de onde o aplicativo Commerce selecionará o documento e o processará. No caso de algum erro encontrado durante o processamento, o documento XML precisa ser manipulado manualmente.
O primeiro catálogo fornecido ao commerce é considerado a Exportação Completa, e subseqüentemente somente os objetos alterados ou excluídos no Product Center são exportados para o commerce como parte da alimentação delta.
O Product Center gera o XML que adere ao DTD definido pelo commerce (WCS.dtd). O processo delta sempre envolve a execução da exclusão do xml primeiramente e depois a atualização, a fim de remover qualquer inconsistência nos estados do objeto.
A integração do WebSphere Product Center e do WebSphere Commerce executa os seguintes objetivos:
Representação do modelo de dados dos objetos do commerce no Product Center
Upload em massa/delta de dados para o aplicativo commerce
Recurso de visualização de item de um objeto existente no Product Center, nas páginas de armazenamento do Commerce
Nota: Consulte o Apêndice A para obter detalhes sobre a referência do modelo de dados.
Os seguintes objetos são incluídos no pacote de integração do Product Center:
WCCatentryCtg – O Catálogo Principal no Product Center
Esse catálogo representa o catálogo principal no commerce. O catálogo está associado à hierarquia WCPdtHier que tem scripts personalizados pós-processamento e pós-salvamento
O Catálogo está associado ao WCCatentryPSpec como o PrimarySpec, o tipo de entrada do catálogo de atributo decidindo o tipo do item do catálogo. Isto é, Pacote/Produto/Kit Estático/Kit Dinâmico
Os Catálogos de Vendas no commerce são representados como hierarquias secundárias para o catálogo principal
WCSKUCtg – Os SKUs que pertencem a um Produto
O modelo de dados do commerce tem SKUs contidos em um produto. Isto é, os atributos de definição de um produto cria os SKUs. Visto que não há representação direta desse objeto no Product Center, a relação entre SKU e Produto é estabelecida por meio desse catálogo
O Produto definido no WCCatentryCtg (Catálogo Principal) é salvo como uma categoria nesse catálogo
Os atributos de definição e os valores correspondentes definidos no WCCatentyCtg são anexados como especificações secundárias à categoria acima
WCSalesHr – O Catálogo de Vendas
Os catálogos de vendas no commerce servem de ferramentas para publicar informações regulares do produto junto com ofertas, descontos etc.
Isso é realizado no Product Center anexando múltiplas hierarquias secundárias ao WCCatentryCtg (Catálogo Principal)
A funcionalidade para copiar itens ou categorias do Catálogo Principal é fornecida através do Script Copiar Itens ou Visualizar Entrada de Categoria
ActivityLog– O Catálogo de Log de Atividades
O catálogo de log de atividades é o identificador principal do aplicativo para reconhecer uploads completos e parciais de dados
Cada Objeto criado no Product Center localiza uma entrada aqui nos scripts pós-salvamento e é atualizado quando tal objeto sofre alterações
O atributo UpdateDateTime identifica a hora em que um determinado objeto foi criado/modificado/excluído. Isso é comparado ao valor de consulta WC1_LAST_UPLOAD_TIME para determinar se ele fará parte da alimentação de catálogo delta
Vários scripts do Product Center auxiliam na representação do modelo de dados dos objetos do commerce no Product Center. A tabela a seguir os descreve
Nome do Script | Tipo de Script | Descrição/Funcionalidade |
Script de Pós-processamento WCCatentry | Script de Catálogo – Pós-processamento |
Executa validações básicas do modelo de dados como número de pela duplicado, validações relacionadas a atributos de definição etc |
Pós-salvamento CatentryCtg | WCSKUCtgPostSave |
Verifica se o item salvo é um produto; em seguida, cria o produto como uma categoria no catálogo SKU e também anexa o atributo de definição como uma especificação secundária |
WCSKUCtgPostSave | WCSKUCtgPostSave |
Cria entrada no catálogo de log de atividades |
Script de Visualização de Entrada WCCatentryCtg | Visualização de Entradas |
Constrói o XML para o item solicitado para visualização e faz upload dos dados XML como um HTTP Post e chama o comando de visualização do commerce |
WCSkuCtgEntryPreview | Visualização de Entradas |
Mesmo acima, visualização para um SKU |
DataExportToCommerceScript | Script de Relatório |
O Relatório que facilita ao usuário a execução de alimentações de catálogo completo/delta no commerce. Esse script em conjunto com alguns scripts de acionamento constrói o XML computando os itens a ser exportados do Catálogo ActivityLog, em caso de delta, transfere por FTP o XML para um diretório predefinido (descrito na tabela de pesquisa) e chama o comando do commerce. |
WC-Export.Wc.XmlFormat | Script de Disparo |
Tal como o ASP/JSP, esse script é parte importante na construção do XML. Todos os nós XML do commerce são descritos nesse script como funções que são chamadas dos scripts de acionamento. |
WC.Validation.Utility.Lib | Script de Disparo |
Um script de acionamento de validação para executar validações básicas nos objetos como não nulo, filtragem de caracteres especiais, validação de exclusividade etc. |
WCExportUtil.wpcs | Script de Acionamento |
O principal script, e que mais trabalha, é chamado no caso de exportação completa/delta, bem como durante visualização. Manipula toda a lógica de negócios e constrói o XML |
activityLogger.wpcs | Script de Disparo |
Esse script manipula todas as entradas relacionadas ao catálogo de log de atividades. |
WC.utility.Lib | Script de Disparo |
Tem funções de utilitário como valores de diversas ocorrências alterados para um item, criando especificação secundária, excluindo o relacionamento SKU para itens de catálogo etc. |
CopyItemsandCategory | Script de Acionamento |
Esse script é utilizado para copiar os itens ou as categorias do catálogo principal para os Catálogos de Vendas. |
Logger de Biblioteca | Script de Disparo |
Um utilitário logger utilizado pelo dev para ter um log de eventos. Atualmente comentado como logger não é proteção de encadeamento. |
Este capítulo fornece a configuração do Product Center e do WebSphere Commerce.
O servidor Commerce está instalado
A Instância do WebSphere Product Center é criada com êxito
O armazenamento do Commerce no qual os dados precisam ser definidos é publicado com êxito
O servidor de FTP está disponível com uma pasta compartilhada tendo acesso de gravação para fazer dump dos arquivos de carregamento XML
Copie os arquivos command.xml, SQLLoad.dtd, SQLLoad.xml, store.xml em uma pasta temporária. Por exemplo, C:\test
Copie os arquivos wpcwcpolicy.xml e wpcwcUserGroup.xml no diretório <WC_installDir>\xml\policies\xml
Copie o arquivo "WCPWC.jar" no diretório <WAS_installdir>\installedApps\<cell_name>\WC_<instance_name>.ear
Copie o arquivo de propriedades WPCWCProperties.properties no diretório <WAS_installdir>\installedApps\<cell_name>\WC_<instance_name>.ear\Stores.war\WEB-INF\classes
Utilize as etapas a seguir para configurar os comandos de integração no WebSphere Commerce.
1) Carregue o arquivo SQLLoad.xml copiado no diretório C:\test, no banco de dados, executando o comando idresolver seguido pelo massloader na mesma janela, conforme mostrado a seguir:
idresgen -dbname <dbname> -dbuser <dbuser> -dbpwd <passwd> -infile C:\test\ SQLLoad.xml –outfile C:\test\ SQLLoadout.xml –method mixed
massload -dbname <dbname> -dbuser <dbuser> -dbpwd <passwd> -infile C:\test\ SQLLoadout.xml –method sqlimport
Nota: No arquivo SQLLoad.dtd, assegure-se de que o caminho para wcs.dtd esteja definido corretamente
Por exemplo, se o wcs.dtd existir no diretório D:\WebSphere\CommerceServer56\schema\xml, o caminho deverá ser especificado como a seguir:
<!ENTITY % wcs.dtd SYSTEM "D:\WebSphere\CommerceServer56\schema\xml\wcs.dtd">
2) Carregue o arquivo wpcwcUserGroup.xml que foi copiado no diretório <WC_installDir>\xml\policies\xml. Para isso, abra uma janela de prompt de comandos, vá para o diretório <WC_installDir>\bin e execute o comando acpload conforme a seguir:
acugload <database name> <database user> <password> wpcwcUserGroup.xml <schema name>
Em que
d bname é o nome do banco de dados
dbuser é o nome do usuário que se conecta ao banco de dados
dbpwd é a senha para o usuário que se conecta ao banco de dados
schemaname é o nome do esquema do banco de dados de destino
3) Carregue o arquivo wpcwcpolicy.xml que foi copiado no diretório <WC_installDir>\xml\policies\xml. Para isso, abra uma janela de prompt de comandos, vá para o diretório <WC_installDir>\bin e execute o comando acpload conforme a seguir:
acpload <dbname> <dbuser> <dbpwd> wpcwcpolicy.xml <schemaname>
Em que
dbname é o nome do banco de dados
dbuser é o nome do usuário que se conecta ao banco de dados
dbpwd é a senha para o usuário que se conecta ao banco de dados
schemaname é o nome do esquema do banco de dados de destino
4) Abra o arquivo MANIFEST.MF que existe no diretório <WAS_installdir>\installedApps\<cell_name>\WC_<instance_name>.ear\Stores.war\META-INF e inclua o arquivo jar WPCWC.jar no final do Caminho de Classe.
5) Abra o arquivo WPCWCProperties.properties em <WAS_installdir>\installedApps\<cell_name>\WC_<instance_name>.ear\Stores.war\WEB-INF\classes e modifique adequadamente os seguintes valores
dbname é o nome do banco de dados
dbuser é o nome do usuário que se conecta ao banco de dados
dbpwd é a senha para o usuário que se conecta ao banco de dados
idresinfiledir é o diretório no qual o Product Center deverá transferir por FTP os arquivos de entradaPor exemplo : C:/WPC-WC/testing
massloadinfile é o arquivo de saída que seria gerado a partir do processo IdResolver e que iria como uma entrada para o processo massloader
Por exemplo: C:/WPC-WC/testing/idresout.xml
schemaname é o nome do esquema do banco de dados de destino
customizer é o arquivo Customizador que tem de ser fornecido para outros bancos de dados, como Oracle.
Por exemplo : OracleConnectionCustomizer.propertiespropfilename é o caminho para o arquivo de propriedades IdResolveKeys.properties
Por exemplo: C:/WebSphere/CommerceServer56/properties/IdResolveKeys.properties
Nota:
1. Inclua a seguinte entrada no final do arquivo IdResolveKeys.properties que existe no diretório <WC_installDir>\properties.
ATTRIBUTE=@LANGUAGE_ID@NAME@FIELD1:LANGUAGE_ID NAME FIELD1
2. Não modifique as outras propriedades de mixedmethod, sqlmethod, deletemethod e optimize.
3. Assegure-se de que wcs.dtd seja colocado no diretório especificado pelo idresinfiledir.
Esta seção descreve como extrair informações do WebSphere Commerce para um commerce stpre.
Crie um novo usuário (pertencente à organização raiz ) no Commerce por meio do Console Admin da Org. com Privilégios Administrativos. Designe uma Função WPCAdministrator ao usuário.
Utilize as etapas a seguir para extrair informações de metadados do WebSphere Commerce:
1) Extraia o arquivo zip para um diretório local
2) Copie o arquivo de filtro Export_MetaData_Filter.xml para um diretório temporário. Por exemplo, C:\test.
3) Abra o arquivo Export_MetaData_Filter.xml para fazer as seguintes alterações e salvar o arquivo:
Procure a cadeia ConsumerDirect e substitua ConsumerDirect pelo identificador apropriado do armazenamento que está sendo considerado
Procure a cadeia 7000000000000000002 e substitua o valor do member_id 7000000000000000002 pelo valor apropriado do member_id do armazenamento que está sendo considerado
4) Abra uma janela de prompt de comandos e vá para o diretório <WC_installdir>\bin
5) Execute a ferramenta massextract do <WC_installdir>\bin conforme a seguir:
massextract -dbname <dbname> -dbuser <username> -dbpwd <password> -filter
C:\test\Export_MetaData_Filter.xml -outfile <outfile> -schemaname <schemaname>
em que
dbname: é o nome do banco de dados
username: é o nome do usuário que está se conectando ao banco
de dados
password: é a senha do usuário que está se conectando ao banco
de dados
outfile: é o nome do arquivo xml de saída no qual os dados
extraídos serão armazenados
schemaname: é o nome do esquema do banco de dados de destino
As informações de metadados seriam geradas em um arquivo, conforme definido pelo valor fornecido para <outfile> acima.
Edite o <arquivo de saída> gerado na seção anterior. Vá para o seguinte elemento ao final do arquivo e substitua logonPwd pela informação sobre a senha correta que foi criada na seção "Criar um Novo Usuário".
<userId
logonid = “<logonId of the user >”
logonpassword =”<logonPwd of the user>” />
Esse arquivo de saída editado seria as informações de metadados fornecidas ao Product Center.
1. Abra o arquivo de propriedades WPCWCProperties.properties em <WAS_installdir>\installedApps\<cell_name>\WC_<instance_name>.ear\Stores.war\WEB-INF\classes e vá para o nome de propriedade ConsumerDirectImgDir.
2. Esse nome tem de ser alterado de acordo com os armazenamentos que foram publicados. Nesse caso, ConsumerDirect é o identificador do armazenamento que foi publicado, por isso o nome ConsumerDirectImgDir.
3. Se o identificador do armazenamento publicado for ToolTech, esse nome de propriedade será fornecido como ToolTechImgDir em vez de ConsumerDirectImgDir.
4. O valor para esse nome de propriedade ConsumerDirectImgDir recebe um caminho onde as imagens do armazenamento são colocadas. Esse caminho é relativo ao StoreDirectory. Por exemplo, se o caminho do armazenamento no máquina do commerce for:
<WAS_installdir>/installedApps/<cell_name>/WC_<instance_name>.ear/Stores.war/ConsumerDirect
e as imagens forem colocadas no diretório de imagens dele, a propriedade deverá ser mencionada como:
ConsumerDirectImgDir = images
1. No arquivo WPC_WC_Version_X.zip, extraia o arquivo zip PreviewUtils.zip em uma pasta temporária.
2. Extraia o conteúdo de PreviewUtils.zip em WAS_HOME\installedApps\<node_name>\<cellname.ear>\Stores.war
Há duas abordagens para visualizar:
1. Publique o armazenamento ConsumerDirect utilizando a interface do console Admin no Commerce
2. Extraia as JSPs do samples.zip para WAS_HOME\installedApps\<node_name>\<cellname.ear>\Stores.war\ConsumerDirect.
Por exemplo, C:\WebSphere\AppServer\installedApps\vdev\WC_demo.ear\Stores.war\ConsumerDirect
3. Reinicie o servidor commerce
Abordagem B (Necessita desenvolvimento de JSP): Modificando as JSPs de armazenamento para qualquer outro armazenamento
Premissas : Os Beans de Dados na JSP são preenchidos utilizando seu keyId.
Lógica de Visualização para trabalhar:
a) Os Beans de Dados correspondentes aos Dados recebidos do Product Center são armazenados em cache no final do Servidor Commerce em uma Estrutura de Dados. Essa estrutura de dados é colocada em um HashMap. Essa Estrutura de Dados pode ser recuperada do HashMap utilizando o valor PreviewBeanId transmitido na sessão. Os Beans de Dados podem ser recuperados dessa Estrutura de Dados utilizando seus valores de chave primária transmitidos no pedido. A JSP utiliza esses Beans de Dados (que contêm informações mescladas) em vez de construir seus próprios beans.
b) A JSP pode ser criada para utilizar esses beans de dados tendo uma JSP, que executa o processo de carregar esses Beans de dados no escopo da página. Essa JSP deverá ser incluída estaticamente em todas as JSPs que exigem o recurso de visualização. O nome da variável/chave utilizada para carregar a variável no escopo da página deverá ser de maneira ideal o mesmo nome da variável que será utilizada pelo bean de dados como na JSP. (Isso facilita o desenvolvimento ao utilizar o JSTL)
c) Determinados recursos que não serão ativados durante visualização (como a Solicitação de um Item etc) devem ser condicionalmente deixados em branco/substituídos por uma mensagem apropriada.
Consulte PreviewDatabeanEnvironmentSetup.jsp no diretório PreviewHelper para a implementação.
1) Obtenha o ID do Bean de Visualização do HashMap
HttpSession session1 = requst.getSession();
String prvw_Bean_Id = (String)
session1.getAttribute(MappingConstants.PRVW_DATA_BEAN_ID);
2) Obtenha a Estrutura de Dados, utilizando este ID:
if (prvw_Bean_Id != null) {
CommDataHashBucket wpcComMapDataBucket = CommDataHashBucket.getCommDataHashBucket();
WPCCommerceMapDataStructure wpcComDataStructure =
wpcComMapDataBucket.getComDataStructure(prvw_Bean_Id);
HashMap catlgObjMap =
wpcComDataStructure.getCatalogObjectsMap();
1) Beans de Dados de Catálogo :
String catlgId = request.getParameter("catalogId");
if (catlgId != null) {
CatalogPreviewDatabean cPrvwDb = null;
HashMap catlgDBMap = (HashMap)
catlgObjMap.get(MappingConstants.CATALOG_BEAN);
cPrvwDb = (CatalogPreviewDatabean) catlgDBMap.get(new Integer(catlgId));
2) Beans de Dados de Categoria :
String catgryId = request.getParameter("categoryId");
if (catgryId != null) {
CategoryPreviewDataBean catgryPrvwDB = null;
HashMap catlgDBMap = (HashMap)
catlgObjMap.get(MappingConstants.CATEGORY_BEAN);
catgryPrvwDB = (CategoryPreviewDataBean)
catlgDBMap.get(catgryId);
3) Para qualquer dos outros Beans de Dados Relacionados a Produto
String prodId = request.getParameter("productId");
if (prodId != null) {
HashMap catlgDBMap = (HashMap) catlgObjMap.get(MappingConstants.PRODUCT_BEAN);
Object prodLvLObj = catlgDBMap.get(prodId);
if (prodLvLObj != null) {
if (prodLvLObj instanceof ProductPreviewDataBean) {
ProductPreviewDataBean prodPrvwDB =
(ProductPreviewDataBean) prodLvLObj;
;
}
else if (prodLvLObj instanceof ItemPreviewDataBean) {
ItemPreviewDataBean itemPrvwDB = (ItemPreviewDataBean) prodLvLObj;
}
else if(prodLvLObj instanceof PackagePreviewDataBean)
{
PackagePreviewDataBean itemPrvwDB =
(PackagePreviewDataBean) prodLvLObj;
}
else if(prodLvLObj instanceof BundlePreviewDataBean){
BundlePreviewDataBean itemPrvwDB = (BundlePreviewDataBean) prodLvLObj;
}else if(prodLvLObj instanceof DynamicKitPreviewDataBean){
DynamicKitPreviewDataBean itemPrvwDB = (DynamicKitPreviewDataBean) prodLvLObj;
}
if (cPrvwDb != null) {
pageContext.setAttribute("catalog",cPrvwDb,1);
}
O nome da variável utilizada para colocá-los no escopo da página deve ser o mesmo utilizado para instanciá-los na JSP de Armazenamento. Isso tem de ser feito para todos os tipos de Objetos de Catálogo.
Inclua estaticamente essa JSP na JSP Existente utilizada para exibição do objeto de catálogo.
Por exemplo: <%@ include file="../../PreviewHelper/PreviewDatabeanEnvironmentSetup.jsp" %>
1) Se estiver utilizando JSTL : Nenhuma alteração é necessária
2) Se estiver utilizando codificação JSP comum, execute uma ação semelhante à mostrada no trecho de código a seguir:
DynamicKitDataBean DynamicKitDataBean = null;
String storeId = ((TypedProperty)request.getAttribute(ECConstants.EC_REQUESTPROPERTIES)).getString(ECConstants.EC_STORE_ID);
if (pageContext.getAttribute("DynamicKitDataBean") == null) {
DynamicKitDataBean = new DynamicKitDataBean ();
com.ibm.commerce.beans.DataBeanManager.activate (DynamicKitDataBean, request);
} else {
DynamicKitDataBean = (DynamicKitDataBean) pageContext.getAttribute("DynamicKitDataBean");
}
Para cuidar desses cenários, verifique um valor para PreviewBeanId e se definido tome a ação apropriada, como exibir uma mensagem declarando ação desativada. Conforme mostrado na seguinte parte de código:
<c:when test="${!empty PreviewBeanId}">
<span class="text"><fmt:message key="SKU_NOT_BUYABLE" bundle="${storeText}" /></span><br /><br />
</c:when>
Preencha as entradas correspondentes mostradas a seguir no arquivo WPCWCproperties.properties. Estas são as páginas que serão utilizadas para Visualizar, em vários objetos de catálogo criados no Product Center. As chaves são a combinação de Identificador de Armazenamento e Exibição de Objeto de Catálogo. (No exemplo a seguir : O Identificador de Armazenamento é ConsumerDirect)
######### CATALOG DISPLAY JSP's ###############
ConsumerDirectCategoryDisplay = ShoppingArea/CatalogSection/CategorySubsection/CategoriesDisplay.jsp
ConsumerDirectProductDisplay = ShoppingArea/CatalogSection/CatalogEntrySubsection/ProductDisplay.jsp
ConsumerDirectItemDisplay = ShoppingArea/CatalogSection/CatalogEntrySubsection/ItemDisplay.jsp
ConsumerDirectDynamicKitDisplay = ShoppingArea/CatalogSection/CatalogEntrySubsection/DynamicKitDisplay.jsp
ConsumerDirectPackageDisplay = ShoppingArea/CatalogSection/CatalogEntrySubsection/PackageDisplay.jsp
ConsumerDirectBundleDisplay = ShoppingArea/CatalogSection/CatalogEntrySubsection/BundleDisplay.jsp
Utilize as etapas a seguir para configurar o Product Center para integração do WebSphere Commerce.
1. Crie uma empresa chamada carmel no ambiente do WPC executando o comando src/db/schema/cmp/create_cmp.sh --code=carmel
2. Agora obtenha o arquivo .zip commerce_carmelV1.0.zip utilizando o FTP do local abaixo especificado
Servidor : <consulte a nota explicativa>
Nome do usuário : <consulte a nota explicativa>
Senha : <consulte a nota explicativa>
Local : <consulte a nota explicativa>
3. Extraia o arquivo zip em um diretório local. Esse arquivo .zip conterá estes abaixo listados
COMMERCE_CARMELLKP.ZIP
COMMERCE_CARMELNONLKP.ZIP
leia-me.txt
4. Como uma solução alternativa a um erro na ferramenta de importação/exportação, crie primeiramente a coleta de atributos WCSKUAttrValColl sem nenhum conteúdo.
5. Antes de tudo, importe COMMERCE_CARMELLKP.ZIP e depois COMMERCE_CARMELNONLKP.ZIP, utilizando o recurso do ambiente de importação do WPC na empresa carmel criada na etapa 1.
6. Obtenha ajuda da equipe do commerce preenchendo os detalhes dos campos da tabela de pesquisa abaixo especificados; para a tabela de pesquisa WCConfigLkpTbl, deixe os outros valores nessa tabela de pesquisa como estão:
a. WC1_STORE_ID |
ID do armazenamento que é publicado |
b. WC1_MEMBER_ID |
ID de membro do Commerce |
c. WC1_MASTER_CATALOG_ID |
ID do catálogo principal para o armazenamento publicado |
d. WC1_LANGUAGE_ID |
Será sempre 1, não altere esse valor |
e. WC1_ITEM_TYPE_ID |
Não altere esse valor |
f. WC1_ITEM_SPC_ID |
Não altere esse valor |
g. WC1_BASE_ITEM_ID |
Não altere esse valor |
h. WC1_FFMCENTER_ID |
Obtenha a ajuda da equipe do Commerce para preencher esse valor |
i. WC1_QUANTITY_ID |
Não altere esse valor |
j. WC1_TRADE_POSCN_ID |
Obtenha a ajuda da equipe do Commerce para preencher esse valor |
k. WC1_SALES_CATALOG_ID |
Um catálogo de vendas deve ser criado na instância do commerce e o ID desse catálogo deve ser fornecido aqui; obtenha ajuda da equipe do commerce para fazer isso |
l. WC1_FTP_HOST_NAME |
IP da caixa na qual o servidor commerce está sendo executado |
m. WC1_FTP_PORT |
Porta de FTP, normalmente não será alterada, depende da configuração do servidor de FTP na caixa do servidor commerce |
n. WC1_FTP_USER_ID |
Nome do usuário do FTP para o servidor de FTP da caixa do servidor commerce; obtenha a ajuda da equipe do commerce para preencher esse valor |
o. WC1_FTP_PASSWORD |
Senha do FTP para o servidor de FTP da caixa do servidor commerce; obtenha a ajuda da equipe do commerce para preencher esse valor |
p. WC1_FTP_PATH |
Caminho a partir do qual a ferramenta massload selecionará o arquivo FTPed; obtenha a ajuda da equipe do commerce para preencher esse valor |
q. WC1_SALES_HIERARCHY_NAME |
Isso não deve ser alterado, hierarquia de vendas predefinida para o catálogo de vendas/navegação criado no commerce como parte da etapa k |
r. WC1_SERVER_NAME |
Nome do servidor onde o servidor commerce está sendo executado |
s. WC1_LAST_UPLOAD_TIME |
Mantenha isso vazio na primeira vez para que o carregamento inicial seja seja iniciado e depois em diante essa chave terá o valor do último time stamp de execução do relatório, se isso estiver vazio, o carregamento inicial será executado |
t. DEFAULT_LOCALE |
Esse atributo deve ter o código de idioma padrão para a parte de integração. ISSO DEVE SER DEFINIDO NO MOMENTO DE IMPLEMENTAÇÃO E NÃO DEVE SER ALTERADO EM UM ESTÁGIO POSTERIOR; ALÉM DISSO, ESSE CÓDIGO DE IDIOMA DEVE FAZER PARTE DOS ATRIBUTOS DE EMPRESA E COMO PARTE DAS ESPECIFICAÇÕES WCCatentryCtg, WCSKUCtg |
u. WC1_LOGON_CMD |
Isso deve ser a URL completa do novo Logon Cmd do Commerce http://<serverName_where_Commerce_installed>/webapp/wcs/stores/servlet/WPCWCLogOn? |
v. WC1_LOGON_CMD_USER |
Usuário criado para propósito de segurança (Consulte a equipe do commerce) |
w. WC1_LOGON_CMD_USER_PASSWORD |
Senha do usuário criada em v. |
7. A tabela de pesquisa "WCCurrencyLkpTbl" tem de ser preenchida com as moedas suportadas no commerce, o valor exato de três caracteres para cada moeda precisa ser preenchido para chave e valor. Por exemplo, USD como chave e USD como valor. Obtenha a ajuda da equipe do commerce ao obter a lista de moedas suportadas na respectiva versão do commerce.
8. Para executar o carregamento inicial/upload delta, execute o relatório DataExportToCommerce do Product Center. Dependendo do valor do campo acima mencionado, será executado o carregamento inicial ou delta
9. Certifique-se de que o IP do servidor commerce esteja disponível como parte do arquivo /etc/hosts na caixa instalada do Product Center.
10. Por causa de um erro na ferramenta de Importação/Exportação, a coleta de atributos para a hierarquia WCPdtHier, WCPdtHierAttrColl precisa ser definida manualmente.
11. Certifique-se de que o valor para "Código do Idioma para Exibição de Dados de Categoria e Item" em Home > Minhas Configurações esteja definido como o Código do Idioma apropriado para que o usuário possa ver o conteúdo no recurso de visualização no mesmo código do idioma esperado por ele.
12. Certifique-se de que o atributo de link catentry de WCCatentryCtg na página de atributos esteja adequadamente vinculado ao atributo catentry_id de WCSKUCtg, já que por causa de um erro de importação/exportação, esse atributo de link não está sendo definido
13. Monte o diretório public_html.
14. Certifique-se de que os atributos de catálogo tenham as entradas para o identificador e nome com valores como Master e MyMasterCatalog
1. Crie um catálogo de vendas no Commerce
2. Crie uma árvore de categorias com a especificação como WCCgrySalesHSpec
3. Anexe isso como uma hierarquia secundária ao catálogo WCCatentryCtg
4. Crie uma nova entrada na tabela de pesquisa SalesLookupTable
SalesCatalogName - deve ser o nome da árvore de categorias criada na etapa 2
SalesCatalogId - Isso deve ser buscado na tabela de catálogos da instância de banco de dados do commerce para o catálogo de vendas criado na etapa 1, campo deverá ser catalog_id
catalogIdentifier - Isso deve ser buscado na tabela de catálogos da instância de banco de dados do commerce para o catálogo de vendas criado na etapa 1, campo deverá ser identifier
5. Crie uma nova entrada na tabela de pesquisa Último Registro da Seqüência
Nome de Hierarquia - deve ser o nome da hierarquia de vendas
Última Seqüência - 500000
6. Copie o conteúdo de "Copiar Itens ou Categoria" em Gerenciador de Modelo de Dados -> scripting -> console de script -> Script de Visualização de Entrada; em seguida, crie um novo script de visualização de entrada com o nome da árvore de categorias de vendas atual anexado com "Copiar Itens ou Categoria"; assim, ele será exclusivo
7. Copie o conteúdo do script do evento de pós-salvamento e pós-processamento para WCSalesHr e cole o mesmo conteúdo para hierarquia de vendas criadas recentemente também
O primeiro catálogo fornecido ao commerce é considerado a Exportação Completa, e subseqüentemente somente os objetos alterados ou excluídos no Product Center são exportados para o commerce como parte da alimentação delta.
O Product Center gera o XML que adere ao DTD definido pelo commerce (WCS.dtd). O processo delta sempre envolve a execução da exclusão do xml primeiramente e depois a atualização, a fim de remover qualquer inconsistência nos estados do objeto.
Para ativar uma Exportação Completa, vá para Gerenciador de Produto > Relatórios > Console de Relatórios. Selecione o relatório DataExportToCommerce e ative-o.
O valor de Consulta WC1_LAST_UPLOAD_TIME na tabela de pesquisa WCConfigLkpTbl determina se a alimentação do catálogo é uma exportação completa ou delta. Se esse valor estiver em branco, significará que é uma exportação completa e computa o XML baseado no estado presente dos catálogos Principal/SKU e exporta o mesmo para o commerce
Uma vez gerado o XML (Com o time stamp afixado ao nome do arquivo, por exemplo WC-WPC-FullExport-2005-03-10-18.26.42.000026.xml), ele é transferido por FTP para o diretório conforme o valor de consulta WC1_FTP_PATH
O comando do commerce, http://2fdtxp90.in.ibm.com/webapp/wcs/stores/servlet/WPCWCLogOn?, é ativado com valores para WCCmd = Publish e o nome do arquivo xml conforme o valor loadFile.
Internamente, o commerce chama o Idresolver e a ferramenta de carregamento em massa para fazer upload desses dados para o banco de dados
Para ativar a Exportação Completa, vá para Gerenciador de Produto > Relatórios > Console de Relatórios. Selecione o relatório DataExportToCommerce e ative-o.
O valor de Consulta WC1_LAST_UPLOAD_TIME na tabela de pesquisa WCConfigLkpTbl determina se a alimentação do catálogo é uma exportação completa ou delta. Se houver algum valor para esse campo, será um delta e o script de relatório primeiramente computa todos os objetos excluídos desde a última execução do relatório no log de atividades e constrói o XML
Uma vez gerado o XML (Com o time stamp afixado ao nome do arquivo, por exemplo WC-WPC-DeltaExport-Delete-2005-03-10-18.50.10.000050.xml), ele é transferido por FTP para o diretório conforme o valor de consulta WC1_FTP_PATH.
O comando do commerce, http://2fdtxp90.in.ibm.com/webapp/wcs/stores/servlet/WPCWCLogOn?, é ativado com valores para WCCmd = Delete e o nome do arquivo xml conforme o valor loadFile.
Internamente, o commerce chama o Idresolver e a ferramenta de carregamento em massa para fazer upload desses dados para o banco de dados
Para ativar a Exportação Completa, vá para Gerenciador de Produto > Relatórios > Console de Relatórios. Selecione o relatório DataExportToCommerce e ative-o.
O valor de Consulta WC1_LAST_UPLOAD_TIME na tabela de pesquisa WCConfigLkpTbl determina se a alimentação do catálogo é uma exportação completa ou delta. Se houver algum valor para esse campo, será um delta e o script de relatório primeiramente computa todos os objetos excluídos desde a última execução do relatório no log de atividades e constrói o XML
Uma vez gerado o XML (Com o time stamp afixado ao nome do arquivo, por exemplo WC-WPC-DeltaExport-Update-2005-03-10-19.20.44.000020.xml), ele é transferido por FTP para o diretório conforme o valor de consulta WC1_FTP_PATH.
O comando do commerce, http://2fdtxp90.in.ibm.com/webapp/wcs/stores/servlet/WPCWCLogOn?, é ativado com valores para WCCmd = Publish e o nome do arquivo xml conforme o valor loadFile.
Internamente, o commerce chama o Idresolver e a ferramenta de carregamento em massa para fazer upload desses dados para o banco de dados.
Como o objetivo principal da integração é compartilhar os dados disponíveis no Product Center, e o modelo de dados XML que será gerado pelo Product Center com essa finalidade é o documento de upload em massa, que é uma representação direta de diferentes tabelas no commerce, seria útil um entendimento dos objetos internos do commerce e em que tabela um objeto é armazenado e quais tabelas têm relacionamentos entre diferentes objetos do commerce.
Armazenamento |
Podemos olhar para isso como um contêiner principal no qual todos os dados estarão disponíveis correlacionados. É possível ter vários armazenamentos no mesmo aplicativo commerce e as mesmas informações estar disponíveis em mais de um armazenamento. Todas as informações de armazenamento serão armazenadas no armazenamento de tabelas e no storeent do commerce. |
Catálogo |
Esses catálogos são semelhantes aos catálogos do Product Center. Esses catálogos serão anexados a pelo menos um armazenamento. Informações relacionadas a catálogo serão armazenadas em 2 tabelas diferentes, catalog/catalogddsc. O relacionamento entre catálogo e armazenamento será armazenado no storecat. |
Categoria |
Essas categorias são semelhantes à categoria no Product Center. Essas categorias estarão nos catálogos. Informações relacionadas a categoria serão armazenadas em 2 tabelas, catgroup/catgrpdesc. O relacionamento entre categorias diferentes será armazenado na tabela catgrprel. O relacionamento entre categoria e catálogo é armazenado na tabela cattogrp, enquanto o relacionamento entre categoria e armazenamento é armazenado na tabela storecgrp. |
Produto |
Esses produtos serão anexados em categorias. Todas as informações relacionadas ao produto serão armazenadas em 3 tabelas diferentes, baseitem/catentry/catentdesc. Produto, pacote configurável, kit estático, kit dinâmico, item, todos esses objetos serão armazenados no mesmo conjunto de tabelas catentry/catentdesc; se o campo catenttype_id de catentry tiver o valor como productBean, o objeto atual será o produto. Além disso, informações relacionados ao produto, kit estático, kit dinâmico serão armazenadas em uma outra tabela chamada baseitem, na qual se o campo itemtype_id tiver o valor como ITEM, o objeto atual será Produto. A tabela Storecent armazenará o relacionamento entre armazenamento e produto. O relacionamento entre categoria e produto será armazenado na tabela catgpenrel. |
Atributos |
Esses atributos serão anexados a um produto e as informações relacionadas ao atributo serão armazenadas na tabela attribute, incluindo o relacionamento entre atributo e produto. |
Item |
Esses itens são semelhantes aos itens no Product Center. Itens serão anexados a produtos. Informações relacionadas ao item são armazenadas em 2 tabelas, catentry/catentdesc. Item e produto são armazenados na mesma tabela. catenttype_id é o que diferencia produto e item. Para item, o valor de catenttype_id será itemBean. Semelhante a produtos, itens também serão relacionados a armazenamentos específicos e essas informações serão armazenadas no mesmo local que produtos, na tabela storecent. A tabela Catentrel mantém o relacionamento entre produto e item. |
Valores de Atributos |
Esses valores de atributos serão anexados a itens e manterão o valor para os atributos anexados ao produto ao qual esses itens estão anexados. Informações relacionadas a valor de atributo serão armazenadas na tabela attrvalue, incluindo o relacionamento entre item e valor de atributo. |
Pacotes Configuráveis |
Pacote configurável é um objeto de agrupamento que pode ter diferentes conjuntos de objeto itens/produtos/kit estático/kit dinâmico para formar um só pacote configurável. Esse pacote configurável será armazenado em 2 tabelas, catentry e catentdesc. O catenttype _id para esse objeto é BundleBean. |
Kit Estático |
Semelhante a pacotes configuráveis, exceto que pacotes configuráveis podem ser desassociados, mas kits estáticos não podem, e só podem conter SKU. O Catenttype_id para kit estático é StaticBean. Além das tabelas catentry e catentdesc, parte das informações relacionadas a kit estático também será armazenada na tabela baseitem; aqui, se o valor do campo itemtype_id for STKT, o objeto atual será kit estático. |
Kit Dinâmico |
Semelhante ao kit estático, a diferença principal aqui é que este pode conter a URL do configurador do produto, onde as informações do item estão disponíveis localmente, mas serão resolvidas pelo configurador do produto na URL especificada. Além das tabelas catentry e catentdesc, parte das informações relacionadas a kit estático também será armazenada na tabela baseitem; aqui, se o valor do campo itemtype_id for DNKT, o objeto atual será kit dinâmico. Na tabela catentry, o catentrytype_id para esse objeto é DynamicKitBean. |
Todos os objetos do Product Center relacionados ao commerce estão incluídos no WC, para que não haja conflito com nenhum outro objeto.
A tabela a seguir resume a tabela anterior descrita. Consulte a seção de validação que se segue à tabela abaixo para obter um conjunto de validações aplicáveis.
Objeto / Recurso |
Representação do Product Center | Representação do Commerce |
Armazenamento |
Os valores a seguir serão armazenados como pares de
chave/valor na tabela de pesquisa do Product Center
|
Informações relacionadas a armazenamento nas tabelas STORE e STOREENT. Cada armazenamento está associado a um catálogo principal e a vários catálogos de vendas |
Catálogo |
O catálogo principal é representado como 2 catálogos e
2 hierarquias no Product Center
1. Catálogo Catentry Todos os atributos específicos de catálogo serão armazenados como parte dos atributos de catálogo no Product Center. Para os atributos específicos do commerce, usaremos o recurso de definição de atributo de catálogo personalizado, em que podemos especificar uma chave e um respectivo valor para atributos de catálogo. Atributos relacionados a hierarquia também serão armazenados da mesma forma. O catálogo Catenetry terá a representação dos objetos do WC, produto, pacote configurável, kit estático e kit dinâmico |
Todos os dados específicos de catálogo serão
armazenados nas tabelas catalog, catalogdsc, storecat. Objetos diferentes que
podem ser associados ao catálogo principal são: categoria, Produto, Item, Pacote
Configurável, Kit Estático e Kit Dinâmico. Essas informações são armazenadas nas tabelas
a seguir
1. catgroup 2. catgrpdesc 3. cattogrp 4. storecgrp 5. catgrprel 6. baseitem 7. catentry 8. catentdesc 9. catgpenrel 10. catentrel 11. attribute 12. attrvalue |
Categoria |
Semelhante à categoria do Product Center. A Hierarquia do Produto será utilizada para armazenar os detalhes relacionados à categoria. Na hierarquia sku do produto, garantiremos que o usuário não possa criar nenhuma categoria na categoria do produto e nenhum item criado em nenhuma outra categoria que não a categoria folha que é um produto. | Todas as informações relacionadas à categoria são
armazenadas nas tabelas
1. catgroup 2. catgrpdesc 3. cattogrp 4. storecgrp 5. catgrprel |
Produto |
Produto terá seus próprios atributos, bem como o
conjunto de atributos será definido específico aos produtos, para o qual o valor será
fornecido no nível de item. Como não há representação direta disso no Product Center, o
produto será definido no catálogo catentry, onde para o campo catentrytype_id o usuário
selecionará o valor como Produto, no pós-salvamento desse catálogo, uma categoria será
criada na hierarquia sku do produto e os atributos definidos fornecidos para esse produto
no catálogo catenetry serão criados como especificação secundária e anexados à
categoria criada recentemente na hierarquia sku do produto como especificação de
categoria de item; além disso, um atributo de relacionamento nessa especificação de
hierarquia estará relacionado ao item respectivo no catálogo catentry. Não há
necessidade de que o usuário inclua essa categoria de produto separadamente. No momento
em que ele criar o produto no catálogo catenetry, essa categoria será criada
automaticamente e pronta para incluir item. Os produtos não podem ter valor para
atributos de relacionamento; se o usuário digitou, um erro de validação será
emitido |
As informações do produto são armazenadas como parte das tabelas baseitem, catentry, cateentrydesc. No identificador de item de base para produto será o campo itemtype_id tendo o valor como ITEM e no campo catenttype_id da tabela catentry tendo o valor como ProductBean |
SKU |
Todos os detalhes relacionados a SKU são armazenados no catálogo SKU. Esse catálogo é associado à hierarquia sku do produto na qual todos os produtos serão a categoria folha em que os atributos para eles são anexados como especificações de categoria de item no pós-salvamento do catálogo catenetry. Embora o SKU esteja sendo incluído, ele será pré-preenchido com os respectivos valores de atributo do produto vinculado e o usuário pode alterá-lo e salvá-lo conforme seu pedido. | Todos os detalhes relacionados a SKU serão armazenados nas tabelas catentry, cateentrydesc. Se o campo catenttype_id na tabela catentry tiver o valor como ItemBean, a entrada atual será SKU |
Pacote Configurável |
No campo catenttype_id do catálogo catenetry tendo o valor como Pacote Configurável representará o objeto de pacote configurável do commerce. Essa especificação terá um atributo de link que é um atributo de várias ocorrências e anexado ao catálogo SKU. Isso será utilizado para agrupar diferentes SKUs do catálogo SKU. Esses pacotes configuráveis podem ter atributos descritivos mas não atributos definidos | Todos os detalhes relacionados a pacote configurável serão armazenados nas tabelas catentry, cateentrydesc. Se o campo catenttype_id na tabela catentry tiver o valor como BundleBean, a entrada atual será pacote configurável |
Kit Estático |
O catálogo Catentry representará o objeto de kit estático do commerce e o valor para o catentrytype_id deve ser StaticKit. Esse catálogo será anexado à hierarquia do produto. A especificação atual terá um atributo de link que é um atributo de várias ocorrências e será vinculada ao catálogo SKU. | Todos os detalhes relacionados a kit estático serão armazenados nas tabelas baseitem, catentry, cateentrydesc. Se o campo catenttype_id na tabela catentry tiver o valor como StaticBean, a entrada atual será pacote configurável e se o campo itemtype_id em baseitem tiver o valor como STKT, o objeto atual representará kit estático |
Kit Dinâmico |
O catálogo Catenetry representará o objeto de kit dinâmico do commerce e o valor para o campo catentrytype_id deve ser DynamicKit. Esse catálogo será anexado à hierarquia do produto. A especificação do catálogo atual terá um atributo de link que é um atributo de várias ocorrências e anexado ao catálogo SKU. Junto com este, um outro atributo de várias ocorrências do tipo URL será utilizado para representar a URL do configurador do produto | Todos os detalhes relacionados a kit dinâmico serão armazenados nas tabelas baseitem, catentry, cateentrydesc. Se o campo catenttype_id na tabela catentry tiver o valor como DynamicKitBean, a entrada atual será pacote configurável e se o campo itemtype_id em baseitem tiver o valor como DNKT, o objeto atual representará kit estático |
ATP |
Se o campo ALLOCATIONGOODFOR na tabela store tiver o
valor como 1, esse recurso estará ativado. Não há nenhuma computação ou nenhuma
entrada do usuário necessária para representar esse recurso no Product Center. Valores
estáticos predefinidos que serão fornecidos pela equipe do commerce serão utilizados
para criar snippets XML para preencher as respectivas tabelas no commerce. |
As tabelas abaixo no commerce são utilizadas para representar o ATP feature1. itemversn2. distarrang3. storeitem4. storeitmffc5. inventory6. itemspc7. versionspc8. itemffmctr |
Merchandising |
Esse recurso é implementado utilizando o conjunto de atributos específicos de merchandising que é definido na especificação atual do catálogo catentry. Haverá 2 atributos importantes: o atributo de tipo de merchandising que pode ter os valores como X-SELL,UPSELL, ACCESSORY, REPLACEMENT e outro atributo será um atributo de relacionamento em que o usuário pode selecionar o catálogo cantentry ou SKU e relacionar os respectivos objetos do WC | O conjunto a seguir de tabelas está relacionado a merchandising no commerce1. massoctype2. massoc3. massoccece |
Vendas |
Esse recurso será representado tendo uma hierarquia
que terá diferentes categorias, criada diretamente pelo usuário ou o usuário pode optar
por ter o mesmo conjunto de categoria junto com seus filhos da hierarquia do produto. Isso
só pode ter informações até categoria. Para diferenciar a hierarquia de vendas de
outras, incluiremos um atributo de hierarquia, HIERARCHY_TYPE, e o valor como SALES.
Informações do produto, SKU, pacote configurável, kit estático e kit dinâmico
não podem ser representadas como parte da hierarquia de vendas. Pode haver quantas
hierarquias de vendas o usuário precisar. Além de o usuário criar suas próprias
categorias, se ele optar por copiar a estrutura do catálogo principal ou de outro
catálogo de vendas, ele deverá conseguir. Para esse propósito, incluiremos script de
visualização de entrada em toda hierarquia de vendas em que ele possa optar por copiar a
estrutura de outro catálogo de vendas ou catálogo principal na categoria atual. |
Um catálogo normal é criado e o campo mastercatalog em storecat é definido como 0. |
Visualização de Item |
O script de visualização de entrada será utilizado para esse recurso; na seleção desse recurso, um URL no commerce será chamado junto com informações necessárias do item. Essas informações do item serão novamente um XML de upload em massa para a entrada atual, que poderá ser uma categoria, produto, pacote configurável, kit estático ou kit dinâmico. Junto com a chamada da URL do WC, estaremos transmitindo o tipo do objeto do WC também. | |
Incluir |
Toda operação de inclusão envolve incluir imagens e também atributos; durante a exportação, as informações sobre atributos serão transferidas como parte da estrutura XML de upload em massa, imagens serão compactadas em zip e enviadas junto com o documento XML de carregamento em massa | |
Modificar |
Semelhante a incluir. Toda alteração em qualquer atributo acionará para ter todos os atributos enviados juntos, sem o envio de informações parciais | |
Excluir |
Sempre, toda exclusão no Product Center acionará para definir o campo markfordelete nas tabelas do commerce, que é novamente a ação de atualização nas respectivas tabelas do commerce, e para chamar um comando URL no WC em que esse comando pode cuidar de qualquer ação posterior como SQLs a serem disparados para concluir essa ação | |
Localização |
Todos os atributos que estão tendo language_id serão definidos como atributos localizados no Product Center. Nas configurações do Product Center, o usuário pode ativar todos os códigos de idioma que quiser ativar | Códigos de idioma suportados utilizando o campo language_id em diferentes tabelas. A partir de agora, os códigos de idioma suportados pelo commerce são en_US, ja_JP, fr_FR, de_DE, it_IT, es_ES, pt_BR, zh_CN, zh_TW, ko_KR |
Moeda |
Nas configurações do Product Center, o usuário pode configurar todas as moedas que quiser. | A partir de agora, as moedas suportadas pelo commerce são BRL, CNY, EUR, JPY, KRW, TWD,USD |
O conjunto a seguir de validações básicas será aplicado enquanto o usuário estiver salvando o item no catálogo catentry como parte do script de pós-processamento.
As definições de tabela do Commerce são diretamente convertidas para tags XML tendo nome de tabela como o nome de elemento e diferentes campos de tabela definidos como atributos de elemento. Valores de atributo são valores reais que precisam ser preenchidos nesses campos de tabela. Para a chave primária exclusivamente, eles são incluídos no símbolo @ para que a regra de geração de chave primária do commerce seja utilizada para recriá-la antes de armazenar esses valores nas tabelas do commerce.
É possível, durante a implementação, incluir uma ou mais extensões dessa tabela e incluir alguns outros campos conforme necessário. Nesse tipo de situação, a tabela de extensão terá o link para o registro correspondente na tabela estendida, na forma de chave estrangeira.
A transferência de dados entre o Product Center e o commerce estará na forma de documentos XML. Conforme especificado no artigo sobre solução, esses documentos gerados serão colocados em um local comum conhecido do Product Center e do commerce, de onde o commerce selecionará esses documentos e os processará.
Nota: A identificação de erros como parte dessa troca de dados é feita manualmente. Não haverá nenhuma comunicação do commerce para o Product Center; será sempre do Product Center para o Commerce.
Documento XML gerado do Product Center DEVE ser compatível com esse DTD. Documento XML gerado conforme esse DTD será representação direta do modelo de dados do Commerce no nível de esquema.
Para o recurso de visualização de item do Product Center no commerce, utilizando a visualização de item de ferramentas personalizadas, o menu será incluído no Product Center e sempre que necessário o usuário poderá escolher esse item de menu depois de selecionar esse item. Agora os detalhes do item que podem ser mostradas na página estática fornecida pelo commerce para esse recurso de visualização de item serão transmitidos utilizando o método HTTP Post. Agora o mesmo será analisado no lado do commerce e mostrado na página estática do commerce no local apropriado. Como deverá ser a aparência da página estática, quais os outros locais que o usuário pode navegar a partir dessa página, como o usuário será controlado nessa página estática depende do que a equipe do commerce decidir.
O requisito da equipe do Product Center terá uma URL na qual ela poderá fazer uma chamada HTTP Post junto com os dados necessários a ser mostrados na página estática.
A IBM pode não oferecer os produtos, serviços ou recursos discutidos neste documento em todos os países. Consulte um representante IBM local para obter informações sobre produtos e serviços disponíveis atualmente em sua área. Qualquer referência a um produto, programa ou serviço da IBM não pretende declarar ou inferir que somente aquele produto, programa ou serviço da IBM pode ser utilizado. Qualquer produto, programa ou serviço funcionalmente equivalente, que não infrinja nenhum direito de propriedade intelectual da IBM ou quaisquer outros direitos da IBM, poderá ser utilizado em substituição a este produto programa ou serviço. Entretanto, é responsabilidade do usuário avaliar e verificar a operação de qualquer produto, usuário ou operação não-IBM.
A IBM pode ter aplicativos de patente ou de patente pendente cobrindo assunto sujeito descrito nesse documento. O fornecimento desta publicação não lhe garante direito algum sobre tais patentes. Pedidos de licença devem ser enviados, por escrito, para:
Gerência de Relações Comerciais e Industriais da IBM Brasil
Av. Pasteur, 138-146
Botafogo
Rio de Janeiro, RJ
CEP 22290-240
O parágrafo a seguir não se aplica ao Reino Unido ou a qualquer país no qual tais previsões são incompatíveis com a lei local:
A INTERNATIONAL BUSINESS MACHINES CORPORATION FORNECE ESTA PUBLICAÇÃO "NO ESTADO EM QUE SE ENCONTRA", SEM GARANTIA DE NENHUM TIPO, SEJA EXPRESSA OU IMPLÍCITA, INCLUINDO, MAS NÃO SE LIMITANDO ÀS GARANTIAS IMPLÍCITAS DE MERCADO OU DE ADEQUAÇÃO A UM DETERMINADO PROPÓSITO. Alguns países não permitem a exclusão de garantias expressas ou implícitas em certas transações; portanto, esta disposição pode não se aplicar a você.
Essas informações poderiam incluir inadequações técnicas ou erros tipográficos. Periodicamente, são feitas alterações nas informações aqui contidas; tais alterações serão incorporadas em futuras edições desta publicação. A IBM pode, a qualquer momento, aprimorar e/ou alterar os produtos e/ou programas descritos nesta publicação sem aviso prévio.
Referências nestas informações a Web sites não-IBM são fornecidas apenas por conveniência e não representam de forma alguma um endosso a estes Web sites. Os materiais desses sites da Web não fazem parte deste produto IBM e o uso dos mesmos fica por sua própria conta e risco.
A IBM pode utilizar ou distribuir as informações fornecidas da maneira que achar conveniente, sem que isso implique em qualquer obrigação para com o Cliente.
Os possuidores de licença deste programa que pretendam obter informações sobre o mesmo com objetivo de permitir: (i) a troca de informações entre programas criados independentemente e outros programas (incluindo este) e (ii) a utilização mútua das informações trocadas, devem entrar em contato com:
Gerência de Relações Comerciais e Industriais da IBM Brasil
Av. Pasteur, 138-146
Botafogo
Rio de Janeiro, RJ
CEP 22290-240
Tais informações podem estar disponíveis, sujeitas a termos e condições apropriados, incluindo em alguns casos, o pagamento de uma taxa.
O programa licenciado descrito neste documento e todo o material licenciado disponível são fornecidos pela IBM sob os termos do Contrato com o Cliente IBM, do Contrato de Licença do Programa Internacional IBM ou de qualquer outro contrato equivalente.
Quaisquer dados de desempenho contidos aqui foram determinados em um ambiente controlado. Portanto, os resultados obtidos em outros ambientes operacionais podem variar significativamente. Algumas medidas podem ter sido tomadas em sistemas em nível de desenvolvimento de sistema e não há garantia de que essas medidas serão as mesmas em sistemas geralmente disponíveis. Além disso, alguma medida pode ter sido estimada através de extrapolação. Resultados reais podem variar. Usuários desse documento devem verificar os dados aplicáveis aos seus ambientes específicos.
As informações sobre produtos não-IBM foram obtidas junto aos fornecedores dos respectivos produtos, de seus anúncios publicados ou de outras fontes disponíveis publicamente. A IBM não testou necessariamente estes produtos e não pode confirmar a precisão de seu desempenho, compatibilidade nem qualquer outra reivindicação relacionada a produtos não-IBM. Questões sobre as capacidades dos produtos não IBM devem ser endereçadas aos fornecedores desses produtos.
Estas informações podem conter exemplos de dados e relatórios utilizados nas operações diárias de negócios. Para que sejam ilustrados do modo mais completo possível, os exemplos incluem nomes de indivíduos, empresas, marcas e produtos. Todos estes nomes são fictícios e qualquer semelhança com nomes e endereços utilizados por uma empresa real é mera coincidência.
Todas as declarações em relação a futura direção ou objetivo da IBM estão sujeitas a alterações e retirada sem aviso e representam metas e objetivos somente.
As informações da interface de programação, se fornecidas, foram projetadas para ajudar você a criar software aplicativo utilizando este programa.
As interfaces de programação de uso geral permitem gravar o software aplicativo que obtém os serviços das ferramentas deste programa.
No entanto, estas informações também podem conter informações de diagnóstico, modificação e ajuste. As informações de diagnóstico, modificação e ajuste são fornecidas para ajudá-lo a depurar seu software aplicativo.
Aviso: Não utilize estas informações de diagnóstico, modificação e ajuste como uma interface de programação, pois está sujeita a alterações.
Os termos a seguir são marcas registradas ou marcas registradas da International Business Machines Corporation nos Estados Unidos e/ou em outros países:
IBM
o logotipo IBM
AIX
CrossWorlds
DB2
Banco de Universal DB2
Domino
Lotus
Lotus Notes
MQIntegrator
MQSeries
Tivoli
WebSphere
Microsoft, Windows, Windows NT e o logotipo Windows são marcas registradas da Microsoft Corporation nos Estados Unidos e/ou em outros países.
MMX, Pentium e ProShare são marcas registradas ou marcas registradas da Intel Corporation nos Estados Unidos e/ou em outros países.
Java e todas as marcas registradas baseadas em Java são marcas registradas da Sun Microsystems, Inc. nos Estados Unidos e/ou em outros países.
Outros nomes de empresas, produtos ou serviços podem ser marcas registradas ou marcas de serviços de terceiros.
O IBM WebSphere Product Center contém determinados Componentes Excluídos (conforme definido no documento pertinente Informações sobre Licença), aos quais são aplicados os seguintes termos adicionais. Este software está licenciado sob os termos e condições do Acordo de Licença do Programa Internacional, sujeito às suas provisões de Componentes Excluídos. A IBM deve fornecer os seguintes avisos juntamente com este software:
i.) O IBM WebSphere Product Center inclui o seguinte software que foi licenciado pela IBM a partir da Apache Software Foundation sob os termos e condições da licença Apache 2.0:
- Apache Regular Expression v1.2
- Apache Axis v1.1
- Apache XML4J v3.0.1
- Apache Log4j v1.1.1
- Apache Jakarta Commons DBCP Package v1.1
- Apache Jakarta Commons Pool Package v1.1
- Apache Jakarta Commons Collections Package v3.0
Licença da Apache
Versão 2.0, janeiro de 2004
http://www.apache.org/licenses/
TERMOS E CONDIÇÕES DE USO, REPRODUÇÃO E DISTRIBUIÇÃO
1. Definições.
"Licença" deve significar os termos e as condições de uso, reprodução e distribuição, conforme definido pelas Seções 1 a 9 deste documento.
"Licenciador" deve significar o proprietário de copyright ou a entidade autorizada pelo proprietário do copyright que está concedendo a Licença.
"Entidade Jurídica" deve significar a união da entidade atuante e todas
as outras entidades que controlam, são controladas ou que estejam sob controle comum
com essa entidade. Para as finalidades desta definição, "controle" significa (i) a capacidade, direta ou indireta, de provocar a direção ou o gerenciamento de tal entidade, seja por contrato ou qualquer outro meio, ou (ii) a detenção de cinqüenta por cento (50%) ou mais das ações pendentes ou (iii) propriedade benéfica de tal entidade.
"Você" (ou "Seu") significa um indivíduo ou uma Entidade Jurídica que está utilizando as permissões concedidas por esta licença.
Formato de "origem" significa o formato preferido para fazer modificações, incluindo, mas não se limitando, ao código fonte do software, à origem da documentação e aos arquivos de configuração.
Formato de "objeto" significa qualquer formato resultante da transformação
ou conversão mecânica de um formato de Origem, incluindo, mas
não se limitando ao código de objeto compilado, à documentação gerada e a
conversões em outros tipos de mídia.
"Trabalho" significa o trabalho de autoria, seja em formato de Origem ou de Objeto, disponibilizado com a Licença, conforme indicado pelo aviso de copyright incluído no trabalho ou anexado a ele (no Apêndice a seguir é fornecido um exemplo).
"Trabalhos Derivativos" significa qualquer trabalho, seja no formato de Origem ou de Objeto, baseado no (ou derivado do) Trabalho e para o qual as revisões editoriais, as anotações, as elaborações ou outras modificações representam, como um todo, um trabalho original de autoria. Para as finalidades desta Licença, os Trabalhos Derivativos não devem incluir trabalhos que permaneçam separáveis ou simplesmente sejam vinculados (ou ligados por nome) às interfaces do Trabalho e dos Trabalhos Derivativos.
"Contribuição" deve significa qualquer trabalho de autoria, incluindo a versão original do Trabalho e quaisquer modificações ou adições feitas a este Trabalho ou Trabalho Derivativo, que sejam intencionalmente submetidas ao Licenciante para inclusão no Trabalho pelo detentor do copyright ou por um indivíduo ou uma Entidade Jurídica autorizada a submeter em nome do detentor do copyright. Para a finalidade dessa definição,
"submetido" significa qualquer formato de comunicação eletrônica, verbal
ou escrita enviado
ao Licenciante ou a seus representantes, incluindo, mas não se limitando à
comunicação em listas de correio eletrônico, sistemas de controle de código fonte
e sistemas de rastreamento de problemas que sejam gerenciados pelo Licenciante, ou
em seu nome, com o objetivo de discutir e aprimorar o Trabalho, mas excluindo a
comunicação visivelmente marcada ou, então, designada por escrito pelo detentor
do copyright como "Não é uma Contribuição."
"Contribuinte" deve significar Licenciante ou qualquer indivíduo ou Entidade Jurídica em nome de quem uma Contribuição foi recebida pelo Licenciante e subseqüentemente incorporada no Trabalho.
2. Concessão de Licença de Copyright. Sujeito aos termos e às condições desta Licença, cada Contribuinte, por meio deste documento, concede a você uma licença de copyright vitalícia, mundial, não exclusiva, gratuita, isenta de direitos autorais e irrevogável para reproduzir, preparar Trabalhos Derivativos, exibir e executar publicamente, sublicenciar e distribuir o Trabalho e estes Trabalhos Derivativos em formato de Origem e Objeto.
3. Concessão de Licença de Patente. Sujeita aos termos e às condições desta Licença, cada Contribuinte, por meio deste documento, concede a você uma licença de patente vitalícia, mundial, não exclusiva, gratuita, isenta de direitos autorais e irrevogável (exceto conforme informado nesta seção) para fazer, ter feito, utilizar, oferecer para venda, vender, importar e, em outro caso, transferir o Trabalho, em que esta licença se aplica somente às reivindicações de patentes licenciáveis por este Contribuinte que sejam necessariamente violadas por seus Contribuições isoladas ou pela combinação de suas Contribuições com o Trabalho a que estas Contribuições foram submetidas. Se Você instituir litigação de patente contra qualquer entidade (incluindo uma reivindicação cruzada ou uma reivindicação em uma ação judicial) alegando que o Trabalho ou uma Contribuição incorporada dentro do Trabalho constitui violação direta ou contribuinte de patente, quaisquer licenças de patentes concedidas a Você sob esta Licença para o Trabalho deverão terminar a partir da data de arquivamento desta litigação.
4. Redistribuição. Você pode reproduzir e distribuir cópias do Trabalho ou de Trabalhos Derivativos deste documento em qualquer meio, com ou sem modificações, e em formulário de Origem ou de Objeto, contanto que Você atenda às seguintes condições:
(a) Você deve fornecer a qualquer outro destinatário do Trabalho ou dos Trabalhos Derivativos uma cópia
desta Licença
(b) Você deve fazer com que quaisquer arquivos modificados enviem avisos proeminentes
informando que Você alterou os arquivos
(c) Você deve reter, no formulário de Origem de quaisquer Trabalhos Derivativos que Você
distribuir, todos os avisos de copyright, patente, marca registrada e
atribuição a partir do formulário de Origem do Trabalho, excluindo os avisos que
não pertencem a nenhum parte dos Trabalhos Derivativos
(d) Se o Trabalho incluir um arquivo de texto "AVISO" como parte de sua
distribuição, quaisquer Trabalhos Derivativos que Você distribui devem
incluir uma cópia legível dos avisos de atribuição contidos dentro de tal
arquivo AVISO, excluindo esses avisos que não
pertencem a nenhuma parte dos Trabalhos Derivativos, em pelo menos um dos seguintes
locais: dentro de um arquivo de texto AVISO distribuído
como parte dos Trabalhos Derivativos; no formato ou documentação de Origem, se
fornecida junto com os Trabalhos Derivativos; ou
em uma exibição gerada pelos Trabalhos Derivativos, se e onde quer que tais
avisos de terceiros normalmente aparecer. O conteúdo
do arquivo AVISO é apenas para fins informativos e não modifica a
Licença. É possível incluir os Seus próprios avisos
de distribuição nos Trabalhos Derivativos distribuídos, ao longo ou como um adendo
ao texto de AVISO do Trabalho, contanto que tais avisos de atribuição adicionais
não possam ser construídos durante a modificação da Licença.
É possível incluir Sua própria declaração de copyright nas Suas Modificações e pode fornecer termos e condições adicionais ou diferentes de licença para uso, reprodução ou distribuição de Suas modificações ou para quaisquer Trabalhos Derivativos como um todo, contanto que Seu uso, reprodução e distribuição do Trabalho estejam em conformidade com as condições descritas nesta Licença.
5. Submissão de Contribuições. A menos que Você informe explicitamente o contrário, qualquer Contribuição intencionalmente submetida para inclusão no Trabalho por Você ao Licenciante deve estar sob os termos e as condições desta Licença, sem nenhum termo ou condição adicional.
Apesar do que foi dito anteriormente, nada descrito neste documento deve substituir ou modificar os termos de nenhum acordo de licença distinto que você tenha firmado com o Licenciante sobre tais Contribuições.
6. Marcas Registradas. Esta Licença não concede permissão para utilizar os nomes comerciais, as marcas registradas, as marcas de serviço ou os nomes de produto do Licenciante, exceto conforme requerido para uso aceitável e costumeiro na descrição da origem do Trabalho e na reprodução do conteúdo do arquivo NOTICE.
7. Isenção de Responsabilidade de Garantia. A menos que requerido pela lei aplicável ou
firmado um acordo, por escrito, o Licenciador fornece o Trabalho (e cada
Contribuinte fornece suas Contribuições) COM BASE "NO ESTADO EM QUE SE ENCONTRA", SEM
GARANTIA DE NENHUM TIPO, SEJA EXPRESSA OU IMPLÍCITA, INCLUINDO, MAS NÃO
SE LIMITANDO ÀS GARANTIAS IMPLÍCITAS DE NÃO-VIOLAÇÃO, MERCADO OU DE ADEQUAÇÃO
A UM DETERMINADO PROPÓSITO. Você é o único responsável pela determinação da adequação de uso ou redistribuição do Trabalho e assume quaisquer riscos associados ao Seu exercício de permissões contidos nesta Licença.
8. Limitação de Responsabilidade. Em nenhuma circunstância e sob nenhuma teoria jurídica,
seja em danos (incluindo negligência), contrato ou, de alguma outra forma,
a menos que seja exigido pela lei aplicável (como atos deliberados e excessivamente negligentes),
ou acordo por escrito, o Contribuinte deverá ser responsabilizado por Você por danos,
incluindo danos diretos, indiretos, especiais, acidentais ou resultantes, de qualquer
espécie que surjam como resultado desta Licença ou do uso ou da incapacidade de uso
do Trabalho (incluindo, mas não se limitando a danos por perda de clientes, interrupção
do trabalho, defeito ou mau funcionamento do computador ou qualquer e todos os
outros danos ou perdas comerciais), mesmo que esse Contribuinte tenha sido avisado
da possibilidade desses danos.
9. Aceitando a Garantia ou Responsabilidade Adicional.
Durante a redistribuição do Trabalho ou dos Trabalhos Derivativos descritos neste documento, Você pode optar por oferecer e cobrar uma taxa para aceitação de suporte, garantia, indenização ou outras obrigações e/ou direitos de responsabilidades consistentes com esta Licença. No entanto, na aceitação dessas obrigações, Você pode agir somente em Seu próprio nome e em Sua exclusiva responsabilidade, não em nome de nenhum outro Contribuinte e somente se concordar em indenizar, defender e reter cada Contribuinte ileso de qualquer responsabilidade incorrida ou reivindicações asseguradas contra esse Contribuinte por motivo da aceitação de qualquer garantia ou responsabilidade adicional.
FIM DOS TERMOS E DAS CONDIÇÕES
APÊNDICE: Como Aplicar a Licença Apache em seu Trabalho.
Para aplicar a Licença Apache em seu trabalho, anexe o seguinte aviso
padronizado, aos campos colocados entre colchetes "[]"
substituídos por suas próprias informações de identificação. (Não inclua os colchetes!)
O texto deve ficar envolvido na sintaxe de comentário
adequada para o formato de arquivo. Recomendamos também que um arquivo ou nome de classe
e descrição do objetivo sejam incluídos na mesma "página impressa" que
o aviso de direitos autorais, para facilitar a identificação de archives de terceiros.
Copyright [aaaa] [nome do proprietário de copyright]
Licenciado sob a Licença Apache, Versão 2.0 (a "Licença");
você não poderá utilizar esse arquivo, exceto em conformidade com a Licença. É possível obter uma cópia da Licença em
http://www.apache.org/licenses/LICENSE-2.0
A menos que requerido pela lei aplicável ou firmado um acordo, por escrito, o software distribuído
na Licença, é distribuído COM BASE "NO ESTADO EM QUE SE ENCONTRA", SEM
GARANTIAS OU CONDIÇÕES DE QUALQUER TIPO, sejam expressas ou implícitas. Consulte a Licença
para obter as permissões de controle no idioma específico e limitações sob a
Licença.
ii.) O IBM WebSphere Product Center inclui o seguinte software que foi licenciado pela IBM a partir da Scott Hudson, Frank Flannery and C. Scott Ananian sob os termos e condições a seguir:
- Cup Parser Generator v0.10k
Aviso de Copyright, Licença e Isenção de Responsabilidade do CUP Parser Generator
Copyright 1996-1999 da Scott Hudson, Frank Flannery, C. Scott Ananian
A permissão para utilizar, copiar, modificar e distribuir este software e sua documentação para qualquer finalidade e sem taxa é concedida por meio deste documento, contanto que o aviso de copyright acima apareça em todas as cópias e que tanto o aviso de copyright como esta isenção de garantia e de aviso de permissão apareçam na documentação de suporte e que os nomes dos autores ou de seus empregadores não sejam utilizados em propaganda ou publicidade relativa à distribuição do software sem permissão prévia específica por escrito.Os autores e seus empregadores renunciam todas as garantias relativas a este software, incluindo todas as garantias implícitas de mercado e adequação. Em hipótese nenhuma os autores ou seus empregadores devem ser responsabilizados por danos especiais, indiretos ou resultantes ou por danos que resultem em perda de uso, de dados ou de lucros, seja em uma ação de contrato, negligência ou outra ação prejudicial, proveniente do uso ou desempenho deste software ou em conexão com o seu uso ou desempenho.
iii.) O IBM WebSphere Product Center inclui o seguinte software que foi licenciado pela IBM a partir da Elliot Joel Berk and C. Scott Ananian sob os termos e condições a seguir:
- JLex v1.2.6
AVISO DE COPYRIGHT, LICENÇA E ISENÇÃO DE RESPONSABILIDADE DA JLEX.
Copyright 1996-2003 da Elliot Joel Berk and C. Scott Ananian
A permissão para utilizar, copiar, modificar e distribuir este software e sua documentação para qualquer finalidade e sem taxa é concedida por meio deste documento, contanto que o aviso de copyright acima apareça em todas as cópias e que tanto o aviso de copyright como esta isenção de garantia e de aviso de permissão apareçam na documentação de suporte e que o nome dos autores ou de seus empregadores não seja utilizado em propaganda ou publicidade relativa à distribuição do software sem permissão prévia específica por escrito.Os autores e seus empregadores renunciam todas as garantias relativas a este software, incluindo todas as garantias implícitas de mercado e adequação. Em hipótese nenhuma os autores ou seus empregadores devem ser responsabilizados por danos especiais, indiretos ou resultantes ou por danos que resultem em perda de uso, de dados ou de lucros, seja em uma ação de contrato, negligência ou outra ação prejudicial, proveniente do uso ou desempenho deste software ou em conexão com o seu uso ou desempenho. Java é uma marca registrada da Sun Microsystems, Inc.
As referências à linguagem de programação Java em relação ao JLex não indicam que a Sun aprova este produto.
iv.) O IBM WebSphere Product Center inclui o seguinte software que foi licenciado pela IBM a partir da International Business Machines Corporation e outros sob os termos e condições a seguir:
- ICU4J v2.8
ICU License - ICU 1.8.1 e posterior
AVISO DE COPYRIGHT E PERMISSÃO
Copyright (c) 1995-2003 International Business Machines Corporation e outros
Todos os direitos reservados.
Desse modo, é concedido permissão gratuitamente a qualquer pessoa que obtém uma cópia
desse software e de arquivos da documentação associados (o "Software"), para lidar
com o Software sem restrição, incluindo sem limitação os direitos de uso, cópia,
modificação, mesclagem, publicação, distribuição e/ou venda de cópias do
Software, e permissão de pessoas a quem o Software é fornecido a fazer isso,
contanto que os avisos de direitos autorais e esse aviso de permissão apareçam em
todas as cópias do Software e que os avisos de direitos autorais acima e esse aviso de
permissão apareçam na documentação de suporte.
O SOFTWARE É FORNECIDO "NO ESTADO EM QUE SE ENCONTRA", SEM GARANTIA DE NENHUM TIPO,
SEJA EXPRESSA OU IMPLÍCITA, INCLUINDO MAS NÃO SE LIMITANDO ÀS GARANTIAS DE MERCADO
E ADEQUAÇÃO A UM DETERMINADO PROPÓSITO E NÃO-TRANSGRESSÃO DE DIREITOS DE
TERCEIROS. EM NENHUMA CIRCUNSTÂNCIA, O PORTADOR OU PORTADORES DE DIREITOS AUTORAIS INCLUÍDOS NESSE
AVISO SERÁ(ÃO) RESPONSABILIZADO(S) POR NENHUMA EXIGÊNCIA, POR NENHUM DANO ESPECÍFICO, INDIRETO OU
CONSEQÜENTE, NENHUM DANO RESULTANTE DA PERDA DE USO, DADOS OU LUCROS,
SE EM UMA AÇÃO DE CONTRATO, NEGLIGÊNCIA OU OUTRA AÇÃO PREJUDICIAL, QUE SURGE
FORA OU EM RELAÇÃO AO USO OU DESEMPENHO DESSE SOFTWARE.
Exceto como contido nesse aviso, o nome de um portador de direitos autorais não deverá
ser utilizado na propaganda ou, do contrário, para promover a venda, o uso e outras transações
desse Software, sem antes ter autorização por escrito do portador de direitos autorais.
-----------------------------------------------------------------------------
Todas as marcas registradas aqui mencionadas, são a propriedade de
seus respectivos proprietários.