Show Menu
主题×

使用CRXDE Lite进行开发

本节介绍如何使用CRXDE lite开发AEM应用程序。
有关可用的不同开发环境的详细信息,请参阅概述文档。
CRXDE lite嵌入到AEM中,使您能在浏览器中执行标准开发任务。 使用CRXDE Lite,您可以在登录和集成SVN时创建项目、创建和编辑文件(如。jsp和。java)、文件夹、模板、组件、对话框、节点、属性和捆绑包。
当您无法直接访问AEM服务器、通过扩展或修改现成组件和Java包来开发应用程序时,或者您不需要专用调试器、代码完成和语法高亮显示时,建议使用CRXDE Lite。
默认情况下,所有AEM用户都可以访问CRXDE Lite。 如果需要, 请为以下节点配置ACL ,以便只有开发人员可以访问CRX DE Lite:
/libs/granite/crxde

CRXDE Lite快速入门

要开始使用CRXDE Lite,请按如下步骤继续:
  1. 安装AEM。
  2. 在您的浏览器中,输入https:// <host> : <port> /crx/de。 默认情况下为 http://localhost:4502/crx/de
  3. 输入您的 用户名 密码 。 默认情况下,它为 admin admin
  4. 单击​ 确定
CRXDE lite用户界面在您的浏览器中如下所示:
您现在可以使用CRXDE Lite开发应用程序。

用户界面概述

CRXDE lite提供以下功能:
顶部切换器栏 允许您在CRXDE Lite、包管理器和包共享之间快速切换。
节点路径构件
显示当前选定节点的路径。
您还可以使用它跳转至节点,方法是手动输入路径,或从其他位置粘贴路径,然后点击Enter。
它还支持查找具有特定节点名称的节点。 输入要查找的节点的名称,然后等待(或点击右侧的搜索符号)。 您可以尝试在构件中输入字符串 oak ,以查看其工作方式。 如果给定节点或节点加载到资源管理器窗格中,则将显示列表,您可以选择路径并按Enter导航到该路径。 请注意,它仅适用于浏览器中当前加载到CRXDE客户端应用程序中的节点。 如果要搜索整个存储库,请依次使用工具和查询。
资源管理器窗格
显示存储库中所有节点的树。
单击某个节点以在“属性”选项卡中显示其 属性 。 单击节点后,您可以在工具栏中选择操作。 再次单击该节点以将其重命名。
树形导航滤镜(双目图标):允许您过滤存储库中名称包含输入文本的节点。 它仅适用于已本地加载的节点。
编辑窗格
“主页 ”选项卡:允许您搜索内容和/或文档,并访问开发人员资源(文档、开发人员博客、知识库)和支持(Adobe主页和支持中心)。
在“资源管理器”窗格中双击 文件 ,以显示其内容;例如。jsp或。java文件。 然后,您可以修改它并保存更改。
在“编辑”窗格中编辑文 件后 ,工具栏上会显示以下工具:
-在 树中显示:显 示存储库树中的文件。 -搜 索/替换…… :执行搜索或替换。 双 击“编辑”窗格的状态行将打开“转 到行 ”对话框,以便输入要转到的特定行号。
“属性”选项卡 显示您选择的节点的属性。 您可以添加新属性或删除现有属性。
“访问控制”选项卡
根据当前路径、存储库级别或主体显示权限。
权限分为
-适 用的访问控制策略 :可应用于当前选择的策略。
-本 地访问控制策略 :当前策略已本地应用于当前选择。
-有效 的访问控制策略 :可以在本地设置或从父节点继承当前选择应用的当前策略。
注意. 要查看访问控制信息,登录到CRXDE lite的用户必须具有读取ACL条目的权限。 默认情况下,匿名用户无法看到此信息——请以(例如,admin)身份登录以查看该信息。
复制选项卡
显示当前节点的复制状态。 您可以复制和复制删除当前节点。
控制台选项卡
服务器日志 :
显示日志消息。 您可以配置日志级别、清除控制台、固定到所选滚动位置并启用/禁用消息显示。
版本控制 :
显示版本控制消息。
“构建信息”选项卡 在构建捆绑时显示信息。
刷新 刷新当前选择。 在存储库的视图中会更新来自其他用户的更改。 您所做的更改不会受到影响。
全部保存
全部保存 :
保存您所做的所有更改。 在单击“保存”之前,更改是临时的,当您退出控制台时,这些更改将丢失。
还原 :
放弃自上次保存操作以来对选定节点所做的所有更改,然后重新加载选定节点的存储库的当前状态。
全部恢复 :
放弃自上次保存操作以来在整个存储库中所做的所有更改,然后重新加载存储库的当前状态。
创建 ...
用于在选定节点下创建以下内容的下拉菜单:
-节 :具有任意节点类型的节点
-文 :nt:文件节点及其nt:资源子节点
-文 件夹 :nt:文件夹节点
-模 :AEM模板
-组 :AEM组件
-对 话框 :AEM对话框
删除 删除选定节点。
复制 复制选定节点。
粘贴 将复制的节点粘贴到选定节点下。
移动 ... 将选定节点移动到通过对话框设置的节点。
重命名 ... 重命名选定的节点。
Mixin... 允许您向节点类型添加混音类型。 混音类型主要用于向节点添加高级功能,如版本控制、访问控制、引用和锁定。
团队
用于执行标准版本控制任务的下拉菜单:
-从 SVN服务器 更新存储库
-将本 地更改 提交到SVN服务器
-查看 当前节点 的状态
-查看 当前节点子树的递归状态
-从 SVN服务器 “签出”工作副本
-从 SVN服务器 (无需创建工作副本)导出项目
-将 项目从存储库 导入到SVN服务器
注意,您需要以具有足够权限的用户身份登录才能执行某些任务(特别是写入本地存储库的任务)。
工具
下拉菜单中包含以下工具:
-服 务器配置…… :访问Felix控制台。
- 查询…… :以查询存储库。
-权 限…… :打开权限管理,您可以在其中查看和添加权限。
-测 试访问控制…… :您可以在其中测试特定路径和/或主体权限的位置。
-导 出节点类型 :将系统中的节点类型作为cnd表示法导出。
-导 入节点类型…… :使用cnd记号导入节点类型。
-安 装SiteCatalyst调试器…… :有关如何安装Analytics Debugger的说明。
登录构件
显示当前登录的用户及其登录的工作区,例如admin@crx.default。
单击它以特定用户身份登录或重新登录。 如果未指定要登录的工作区,则将登录到默认工作区crx.default。
如果要以匿名用户的身份浏览存储库,请使 用匿名 ,作为登录名和任何密码(例如空格或点)。
如果您的授权不再有效(例如,该授权已过期),则登录小部件会显示“未授 权——登录。. ”。 单击它以再次登录。

创建项目

使用CRXDE Lite,只需单击三下即可创建工作项目。 项目向导将在以下位置创建新项 /apps 目:t下的某些内 /conten 容以及将所有项目内容打包在下的包 /etc/packages 。 该项目可立即用于渲染示例页面,该示例页面显示 Hello World ,该示例页面基于jsp脚本,该脚本从存储库中渲染属性并调用Java类来渲染某些文本。
使用CRXDE Lite创建项目:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. 在导航窗格中,右键单击某个节点,选择创 ​建…… ,然后 ​选择创建项目…….
    注意:您可以右键单击树导航中的任意节点,因为新项目节点是按设计在下面和下面创建 /apps, /content``/etc/packages
  3. 定义:
    • 项目名称 -项目名称用于创建新节点和捆绑,例如 myproject .
    • Java包 - Java包名前缀,例如 com.mycompany .
  4. 单击​ 创建
  5. 单击 全部保存 ,以在服务器上保存更改。
要访问显示 Hello World的示例页 ​面,请将您的浏览器指向:
http://localhost:4502/content/<project-name>.html
Hello World ”页面基于内容节点,该节点通过属性调用jsp脚 sling:resourceType 本。 该脚本从存储库 jcr:title 中读取该属性,并通过调用项目包中可用的SampleUtil类的方法获取正文内容。
将创建以下节点:
  • /apps/<project-name> :应用程序容器。
  • /apps/<project-name>/components :包含用于呈现页面的示例html.jsp文件的组件容器。
  • /apps/<project-name>/src :包容器,包含示例项目包。
  • /apps/<project-name>/install :编译的包容器,包含编译的示例项目包。
  • /content/<project-name> :内容容器。
  • /etc/packages/<java-suffix>/<project-name>.zip ,包含所有项目应用程序和内容的包。 您可以使用它重新构建项目以进一步部署(例如,到其他环境)或通过包共享进行共享。
在CRXDE Lite中,该结构如下所示,其项目名为 myproject ,而java包后缀名为 mycompany :

创建文件夹

要使用CRXDE lite创建文件夹,请执行以下操作:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. 在导航窗格中,右键单击要在其下创建新文件夹的文件夹,选择创建…… ,然后​ ​选择创建文件夹…….
  3. 输入文件夹 名称 ,然后单 击确定
  4. 单击 全部保存 ,以在服务器上保存更改。

Creating a Template

要使用CRXDE lite创建模板,请执行以下操作:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. 在“导航”窗格中,右键单击要创建模板的文件夹,选择创建…… ,然后​ ​选择创建模板…….
  3. 输入 Title , Title , Description , Resource of the Type Label and Ringing Of the The Label模板。 单击​ 下一步
  4. 此步骤是可选的:设置“允 许的路径” 。 Click Next
  5. 此步骤是可选的:设置“允 许的父母” 。 单击​ 下一步
  6. 此步骤是可选的:设置“允 许的子项” 。 单击​ 确定
  7. 单击 全部保存 ,以在服务器上保存更改。
它创建:
  • 具有“模板”属性 cq:Template 的类型节点
  • 具有页面内容属性的类 cq:PageContent 型的子节点
您可以向模板中添加属性:请参阅创 建属性部分

创建组件

仅当存储库中提供节点类型时,此处介绍 cq:Component 的功能才可用。
要使用CRXDE lite创建组件,请执行以下操作:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. 在导航窗格中,右键单击要创建组件的文件夹,选择创 ​建…… ,然后 ​选择创建组件…….
  3. 输入Label 、Title 、Description Super Resources of the Label 、Title 、Description 、Super Type Group Component。 单击​ 下一步
  4. 此步骤是可选的:设置组件属性 为容器、无装饰 、单 元格名称 和对 话路径 。 单击​ 下一步
  5. 此步骤是可选的:设置组件属性“允 许的父项 ”。 单击​ 下一步
  6. 此步骤是可选的:设置组件属性“允 许的子项 ”。 单击​ 确定
  7. 单击 全部保存 ,以在服务器上保存更改。
它创建:
  • 类型的节点 cq:Component
  • 组件属性
  • 组件。jsp脚本

创建对话框

要使用CRXDE lite创建对话框,请执行以下操作:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. 在导航窗格中,右键单击要创建对话框的组件,选择创 ​建…… ,然后 ​选择创建对话框…….
  3. 输入标 和标 。 单击​ 确定
  4. 单击 ​全部保存”以在服务器上保存更改。
它创建一个具有以下结构的对话框:
dialog[cq:Dialog]/items[cq:Widget]/items[cq:WidgetCollection]/tab1[cq:Panel]
您现在可以通过修改属性或创建新节点来调整对话框以满足您的需求。
您还可以使用对话框编辑器编辑对话框。 双击CRXDE Lite中的对话框节点将显示编辑器。 有关对话框编辑器的更多信息,请访

创建节点

要使用CRXDE lite创建节点,请执行以下操作:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. 在导航窗格中,右键单击要创建新节点的节点,选择创建…… ,然后​ ​选择创建节点…….
  3. 输入名 和类 。 单击​ 确定
  4. 单击 全部保存 ,以在服务器上保存更改。
您现在可以通过修改属性或创建新节点来调整节点以满足您的需求。
大多数编辑操作(包括创建节点)都会保留内存中的所有更改,并且只会在保存后将其存储到存储库中(通过“全部保存”按钮)。 但是,某些操作(如移动)会自动保留。
在保存更改时,JCR存储库还首先执行关于新创建的节点是否被父节点的节点类型允许的验证。 如果在保存节点时收到错误消息,请检查内容结构是否有效(例如,您不能将节点创建为节 nt:unstructured 点的子节 nt:folder 点)。

创建属性

使用CRXDE Lite创建属性:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. 在“导航”窗格中,选择要添加新属性的节点。
  3. 在底部窗 格的 “属性”选项卡中,输入名 、类 型和 ​值。 单击​ 添加
  4. 单击 全部保存 ,以在服务器上保存更改。

创建脚本

要创建新脚本,请执行以下操作:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. 在“导航”窗格中,右键单击要创建脚本的组件,选择“创建……” ,然后选择“ ​创建文件……”.
  3. 输入“文件 ”(包括其扩展名)。 单击​ 确定
  4. 新文件将作为选项卡在“编辑”窗格中打开。
  5. 编辑文件。
  6. Click Save All to save the changes.

管理捆绑

使用CRXDE Lite,创建OSGI包、向其添加Java类和构建它非常简单。 然后,该捆绑自动安装并在OSGI容器中启动。
本节介绍如何使用显 Test 示Hello World!的 HelloWorld Java类创建 捆绑包 在您的浏览器中。

创建捆绑

要使用CRXDE Lite创建Test捆绑,请执行以下操作:
  1. 在CRXDE Lite中,使用 myapp 项目向导创 建项目 。 创建了以下节点:
    • /apps/myapp/src
    • /apps/myapp/install
  2. /apps/myapp/src 右键单击将包 Test 含捆绑包的文 件夹,选择 ​创建…… ,然后 ​创建捆绑包…….
  3. 按如下方式设置捆绑属性:
    • 符号包名称: com.mycompany.test.TestBundle
    • 包名称: Test Bundle
    • 捆绑说明: This is my Test Bundle
    • 包: com.mycompany.test
      单击​ 确定
  4. 单击 全部保存 ,以在服务器上保存更改。
向导将创建以下元素:
  • 类型为 com.mycompany.test.TestBundle It的节 nt:folder. 点是捆绑容器节点。
  • 文件 com.mycompany.test.TestBundle.bnd 。 它充当捆绑包的部署描述符,由一组标头组成。
  • 文件夹结构:
    • src/main/java/com/mycompany/test . 它将包含包和Java类。
    • src/main/resources . 它将包含捆绑中使用的资源。
  • Activator.java 件。 它是可选的监听器类,用于通知捆绑启动和停止事件。
下表列出了。bnd文件的所有属性及其值和说明:
属性 值(创建捆绑时) 描述
导出包:
*
注意:需要调整此值以反映包的特异性。
Export-Package头定义从包中导出的包(包列表以逗号分隔)。 导出的包构成包的公共视图 。
导入包:
*
注意:需要调整此值以反映包的特异性。
Import-Package头为包定义导入的包(包列表,以逗号分隔)
私有包:
*
注意:需要调整此值以反映包的特异性。
私有包头定义包的私有包(包列表,以逗号分隔)。 私人一揽子方案构成内部执行。
Bundle-Name: 测试套件 为包定义一个简短的、可读的名称
Bundle-Description: 这是我的测试套件 为包定义简短的、可读的描述
Bundle-SymbolicName: com.mycompany.test.TestBundle 为包指定唯一、不可本地化的名称
捆绑版本: 1.0.0-SNAPSHOT 指定捆绑的版本
Bundle-Activator: com.mycompany.test.Activator 指定要通知捆绑启动和停止事件的可选监听器类的名称
有关bnd格式的详细信息,请参阅CRXDE用 于创建OSGI包的bnd实用程序

创建Java类

要在测试 HelloWorld 包中创建Java类,请执行以下操作:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. Activator.java 在“导航”窗格中,右键单击包含文件( /apps/myapp/src/com.mycompany.test.TestBundle/src/main/java )的节点,选择“ 创建…… ”,然后​ ​选择“创建文件……”.
  3. 命名文件 HelloWorld.java 。 单击​ 确定
  4. 文件 HelloWorld.java 将在“编辑”窗格中打开。
  5. 在中添加以下行 HelloWorld.java :
    package com.mycompany.test;  
    
    public class HelloWorld { 
      public String getString(){ 
      return "Hello World!"; 
      } 
    }
    
    
  6. 单击 全部保存 ,以在服务器上保存更改。

构建捆绑

构建测试包:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. 在“导航”窗格中,右键单击。bnd文件,选择“工具”, 然后选择 “捆绑​
构建包向导:
  • 编译Java类。
  • 创建包含编译的Java类和资源的。jar文件,并将其放入文件 myapp/install 夹。
  • 在OSGI容器中安装并启动捆绑包。
要查看测试包的效果,请创建一个使用Java方法HelloWorld.getString()的组件和由此组件呈现的资源:
  1. 在下面创建 mycomp 组件 myapp/components
  2. mycomp.jsp 辑代码并将其替换为以下行:
    <%@ page import="com.mycompany.test.HelloWorld"%><% 
    %><%@ include file="/libs/foundation/global.jsp"%><% 
    %><% HelloWorld hello = new HelloWorld();%><% 
    %> 
    <html> 
    <body> 
    <b><%= hello.getString() %></b><br> 
    </body> 
    </html>
    
    
  3. 在下创建类 test_node 型的 nt:unstructured 资源 /content
  4. test_node 于,创建以下属性:名称= sling:resourceType ,类型= String ,值= myapp/components/mycomp
  5. 单击 全部保存 ,以在服务器上保存更改。
  6. 在您的浏览器中,请求 test_node : https://<hostname>:<port>/content/test_node.html .
  7. 将显示一个包含 Hello World!的页面 message.

导出和导入节点类型

使用CRXDE Lite,您可以导入和/或导出 CND(压缩命名空间和节点类型定义)记号中的节点类型定义
要导出节点类型定义,请执行以下操作:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. 选择所需的节点。
  3. 选择工 ,然后选择 导出节点类型
  4. 定义(以代码表示)将显示在浏览器中。 根据需要保存信息。
要导入节点类型定义,请执行以下操作:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. 选择 ​工具​ , ​然后选择导入节点类型…….
  3. 在文本框中输入定义的CND记号。
  4. 如果 要更新现有定义 ,请选中“允许更新”。
  5. 单击​ 导入

记录

使用CRXDE Lite,您可以显示位于文 error.log 件系统中的文件,并使用相 <crx-install-dir>/crx-quickstart/server/logs 应的日志级别对其进行过滤。 按如下步骤继续:
  1. 在您的 浏览器中打开 CRXDE Lite。
  2. 在窗 口底部的 “控制台”选项卡中,在右侧的下拉菜单中,选择“服务器日 志”
  3. Click the Stop icon to display the messages.
您可以:
  • 单击“记录配置”图标,在Felix控制台中调整 日志参数
  • 单击“画笔”图标以清除 消息
  • 单击“固定”图标,将消息固定到当前选
  • 通过单击“停止”图标启用或禁用消 息显 示。