Integração JCR
- Tópicos:
- Desenvolvimento
Criado para:
- Desenvolvedor
Preferir a API do recurso Sling para a API JCR
A API do Sling funciona em um nível mais alto e mais abstrato que a API do JCR. Isso permite que seu código seja mais reutilizável e independente do armazenamento subjacente. Isso facilita a inclusão de dados virtuais externos por meio do mecanismo ResourceProvider, se necessário.
Evite consultas sempre que possível
É sempre mais rápido navegar no repositório para recuperar dados do que executar um query. Há casos em que as consultas serão necessárias, como uma consulta de usuário final ou a necessidade de localizar conteúdo estruturado em todo o repositório, mas para todos os outros casos, é preferível navegar até os nós necessários. As consultas devem ser sempre evitadas na lógica de renderização, como componentes de navegação, uma "lista de itens recentes", contagens de itens e assim por diante. Nesses casos, é melhor percorrer a hierarquia ou pré-armazenar o resultado em cache para que ele possa ser usado diretamente quando renderizado.
Restringir o escopo da observação do JCR
Ao acompanhar eventos no repositório, é importante restringir o escopo o máximo possível. Por exemplo, é muito melhor ouvir um evento em /etc/mycompany
do que ouvir /etc
. Nunca acompanhe eventos na raiz do repositório. Além disso, certifique-se de que os métodos de retorno de chamada sejam executados o mais rápido possível quando não houver nada para eles fazerem.
Eliminar o uso do acesso do administrador do JCR
A partir do AEM 6, o login administrativo foi descontinuado, pois recebeu uma sessão administrativa do ResourceResolverFactory. Em vez disso, devem ser criadas contas de serviço para as operações de back office que exigiriam esse tipo de acesso e o ResourceResolverFactory pode ser usado para obter um ResourceResolver para esta conta.
Experience Manager
- Visão geral do Guia do usuário para desenvolvimento
- Introdução para desenvolvedores
- Introdução ao desenvolvimento do AEM Sites - Tutorial de WKND
- AEM Conceitos principais
- Estrutura da interface de usuário habilitada para toque do AEM
- Conceitos da interface de usuário habilitada para toque do AEM
- Desenvolvimento de AEM - Diretrizes e práticas recomendadas
- Uso de bibliotecas do cliente
- Desenvolvimento e diff de página
- Limitações do editor
- Quadro de proteção do QREF
- Modelagem de Dados - Modelo de David Nuescheler
- Contribuição para AEM
- Segurança
- Materiais de referência
- Criar um site com recursos completos (interface clássica)
- Designs and the Designer (Classic UI)
- Plataforma
- Folha de características do Sling
- Uso de adaptadores Sling
- Bibliotecas de tags
- Modelos
- Uso da Fusão de Recursos do Sling em AEM
- Sobreposições
- Convenções de nomenclatura
- Criação de um novo componente de campo da interface do usuário do Granite
- Query Builder
- Marcação com tags
- Personalização de páginas mostradas pelo Manipulador de erros
- Tipos de nó personalizados
- Adicionar fontes para renderização de gráficos
- Conexão com Bancos de Dados SQL
- Exteriorização de URLs
- Criação e consumo de trabalhos para descarregamento
- Configuração do uso de cookies
- Como acessar programaticamente o JCR AEM
- Integração de serviços com o console JMX
- Desenvolvimento do editor em massa
- Desenvolvimento de relatórios
- eCommerce
- Componentes
- Componentes principais
- Sistema de estilos
- Visão geral dos componentes
- Componentes AEM - Noções básicas
- Desenvolvimento de componentes de AEM
- Desenvolvimento de componentes de AEM - Amostras de código
- Exportador JSON para serviços de conteúdo
- Ativação de exportação em JSON para um componente
- Editor de imagem
- Tag de decoração
- Uso de condições de ocultação
- Configuração de vários editores no local
- Modo de desenvolvedor
- Testar sua interface do usuário
- Componentes para fragmentos de conteúdo
- Obter informações de página no formato JSON
- Internacionalização
- Componentes da interface clássica
- Gerenciamento de experiência headless
- Sem cabeçalho e híbrido com AEM
- Ativação da exportação em JSON para um componente
- Aplicativos de página única
- Introdução e passo a passo do SPA
- Tutorial WKND do SPA
- Introdução ao SPA no AEM - React
- Introdução ao SPA no AEM - Angular
- Implementação de um componente de reação para SPA
- Aprofundamentos de SPA
- Visão geral do editor de SPA
- Desenvolvimento de SPAs para o AEM
- Blueprint do SPA
- Componente de página SPA
- Modelo dinâmico para mapeamento de componentes para SPA
- Roteamento do Modelo de SPA
- Integração do SPA e Adobe Experience Platform Launch
- Renderização de SPA e do servidor
- Materiais de referência SPA
- API HTTP
- Fragmentos de conteúdo
- Fragmentos de experiência
- Ferramentas de desenvolvimento
- Ferramentas de desenvolvimento
- Ferramentas de Modernização do AEM
- Editor de caixa de diálogo
- Ferramenta de conversão de caixa de diálogo
- Desenvolvimento com o CRXDE Lite
- Gerenciamento de pacotes usando o Maven
- Como desenvolver projetos AEM usando o Eclipse
- Como criar projetos AEM usando o Apache Maven
- Como desenvolver projetos AEM usando o IntelliJ IDEA
- Como usar a ferramenta VLT
- Como usar a ferramenta Servidor proxy
- Extensão de colchetes AEM
- Ferramentas de desenvolvedor do AEM para Eclipse
- Ferramenta AEM Repo
- Personalização
- ContextHub
- Referência de API do Javascript do ContextHub
- Extensão do ContextHub
- Adicionar o ContextHub às páginas e acessar armazenamentos
- Exemplos de candidatos à loja do ContextHub
- Exemplos de tipos de módulo da interface do usuário do ContextHub
- Diagnósticos do ContextHub
- Desenvolvimento de conteúdo direcionado
- ClientContext
- Extensão de AEM
- Personalização da criação de página
- Personalização dos consoles
- Personalização de exibições das propriedades da página
- Configurar sua página para a edição de itens em massa das propriedades da página
- Personalização e extensão de fragmentos de conteúdo
- Extensão de fluxos de trabalho
- Extensão do Gerenciador de vários sites
- Rastreamento e análise
- Cloud Services
- Criação de extensões personalizadas
- Forms
- Integração de serviços com o console JMX
- Desenvolvimento do editor em massa
- Extensão da interface clássica
- Testes
- Planejamento
- Quais ambientes de teste serão necessários?
- Definição dos casos de teste
- Teste - quando e com quem?
- Compilação do plano de teste
- Rastrear resultados e fornecer feedback
- Ferramentas de teste e rastreamento
- Aceitação e aprovação
- A próxima versão…
- Listas de verificação
- Dia difícil
- Testar sua interface do usuário
- Práticas recomendadas
- Visão geral das práticas recomendadas
- Diretrizes de desenvolvimento de AEM e práticas recomendadas
- Práticas recomendadas de desenvolvimento
- Arquitetura de conteúdo
- Arquitetura de software
- Implementação de referência We.Retail
- Implementação de referência We.Retail
- Experimentação de fragmentos de conteúdo no We.Retail
- Como experimentar os Componentes principais no We.Retail
- Tentando modelos editáveis no We.Retail
- Tentando um layout responsivo no We.Retail
- Tentar a estrutura do site globalizado no We.Retail
- Experiência de fragmentos de experiência no We.Retail
- Dicas de codificação
- armadilhas de código
- Pacotes OSGI
- Integração JCR
- Amostras de código
- Solução de problemas de consultas lentas
- Web móvel