
xwiki开发人员指南
编程小泓哥
主要方向:AIOPS、web渗透、中间件开发。如果我写的文章对你有帮助,帮忙点赞收藏下文章,顺便在我的博客首页加下我的微信群,我们一起学习进步
展开
-
xwiki 7.14 Windows安装教程(jetty + MySQL5.7+jdk1.7)
环境: mysql5.7 win7 jdk1.7(配置环境变量)http://forge.ow2.org/project/showfiles.php?group_id=170 所有历史版本下载http://forge.ow2.org/project/download.php?group_id=170&file_id=20840 下载7.14版本1、解压xwiki...原创 2016-02-16 23:37:31 · 2397 阅读 · 4 评论 -
xwiki开发者指南-编写一个XWiki组件
本教程将指导你创建一个XWiki组件,这是一种方式来扩展或定制XWiki platform。事实上,XWiki platform是由组件组成,可以通过你的实现来替换默认的实现。也可以添加新的组件来扩展platform,例如通过实现新的渲染宏。组件目前已经替换旧的插件。你应该先阅读XWiki组件的参考文档。让我们开始吧!在下面的教程中,我们将引导你写一个简单的组件,帮助你快速学习XW...原创 2019-04-11 10:20:35 · 1216 阅读 · 0 评论 -
xwiki开发者指南-国际化应用程序
教程国际化一个表单教程在XWiki页面使用propertie创建一个页面,由键/值对组成 在该页面中输入所有的键/值对(使用wiki编辑)。例如: greeting=hello welcome=Welcome withparams=I can {0} pass {1} {2} params too using the Java MessageFormat syntax 为你...原创 2019-04-11 10:20:41 · 937 阅读 · 0 评论 -
xwiki开发者指南-创建新的类属性类型
此教程将指导你创建一个新的类属性类型,通过这种方式来扩展类编辑器。此教程适用于XWiki 4.3M2以上版本。不要在旧版本尝试!你应该先阅读XWiki数据模型来了解XWiki的类,对象,属性,然后编写一个XWiki组件,因为新的属性类型是通过组件来实现。创建一个新的属性类型作为一个例子,我们将创建一个可用于存储外部图像URL的"External Image"属性类型。让我们通过扩展...原创 2019-04-10 08:37:40 · 941 阅读 · 0 评论 -
xwiki开发者指南-自定义映射
自定义映射允许将XWiki类(XClass)映射到数据库表(相对于未映射XClasses,使用标准的,预定义的XWiki table scheme)。自定义映射可用于提高性能(当一个类有大量实例的时候),或者共享外部数据(企业数据,或其他软件的数据)。使用自定义映射是一个3步过程:在一个hbm.xml文件中,为你XClass定义Hibernate映射(见下面的例子)。此文件要放在CLASS...原创 2019-04-10 08:36:11 · 945 阅读 · 0 评论 -
xwiki开发者指南-为一个一分钟创建App应用程序编写自定义SOLR搜索
本教程介绍了如何为一个一分钟创建App应用程序(即AWM)编写自定义SOLR搜索。在这个例子中,我们使用了"支出报表"应用程序。目标是建立一个只会返回支出报表的搜索功能,并在facet(面板)使用支出报表的一些字段。在这个例子中,我们将为facet添加支出报表类的状态、组织、货币、客户和用户字段。此外,我们将建立一个“List Facet”,允许显示StaticList以及DBList字段...原创 2019-04-10 08:36:05 · 1028 阅读 · 1 评论 -
xwiki开发者指南-执行异步任务
用例实现对空间重命名,需要考虑到以下问题:一个空间可以有很多页面 每个页面可以有很多反向链接 一些页面可以有大量的内容,我们要在内容里更新相对链接这操作可能需要大量的时间,所以我们需要显示进度。这意味着我们不能阻塞触发操作的HTTP请求。换句话说,操作应该是异步的。API设计在我们开始实现之前,我们需要设计重命名API。实现异步任务的主要方法有2种:push: 启动任务,...原创 2019-04-10 08:35:58 · 869 阅读 · 0 评论 -
xwiki开发者指南-主从视图教程
本次教程介绍了如何在XWiki使用一分钟创建App(AWM)和一些自定义的编码来实现一个主从视图(master-detail view)。更具体地说,我们希望有一个拥有2个字段的HTML表单,当我们选择一个字段的一个值,另一个字段基于第一个字段的选择自动更新它的值。我们将采取州和城市的例子:一个字段将让用户选择一个州(State),另外一个字段选择一个城市(City)。第1步:创建一个S...原创 2019-04-10 08:35:52 · 1421 阅读 · 31 评论 -
xwiki开发者指南-最佳实践
代码放哪?因为xwiki允许你把代码放在wiki页面或者放在java,你可能会问,应该把代码放哪。下面是一些一般原则:不要把"业务逻辑"代码放在wiki页面,应该放在Java。因为放Java可以通过IDE方便地调试代码,并可以编写单元测试用来自动测试。一般来说它更容易维护。 一般来说,尽量少在wiki页面写一些脚本,因为这会让他们难以维护。 只有"表现层逻辑"脚本适合放在wiki页面(...原创 2019-04-10 08:35:45 · 1308 阅读 · 24 评论 -
xwiki介绍-Rendering
作用: 把给定语法的一些文本输入内容转换成另一种语法的输出内容通用架构Parser: 解析一个给定的语法的一些文本输入,并生成一个XDOM对象(一个抽象语法树) Renderer: 取XDOM作为输入并产生一些输出 Transformation: 取一些XDOM并修改它生成一个修改后的XDOM特性解析器多种语法 同时提供一个流API(用于渲染比较大的内容)和基于XDOM的A...原创 2019-04-10 08:37:34 · 2042 阅读 · 42 评论 -
xwiki介绍-所有项目
xwiki有以下类型项目:Top Level Projects: 这些活跃的项目由xwiki开发团队积极的开发中 Contrib Projects: 这些项目不是由xwiki开发团队开发,是一些基于xwiki底层开发的贡献项目 Retired Projects: 这些都是那些曾经被XWiki开发团队开发的活动项目,现在已经作为退休项目被移到在contrib里面,通常是因为有更好的替代品。他...原创 2019-04-10 08:36:16 · 2435 阅读 · 3 评论 -
xwiki介绍-commons项目
XWiki Commons是一组可以在XWiki生态圈之外可重用的Java技术库。它们当中一部分在XWiki Rendering项目使用。以下可用库:名字 描述 xwiki-commons-component 一个简单组件生命周期的通用、非常轻量的注入框架 xwiki-commons-configuration 提供需要配置数据的组件的基础结构 xwiki-c...原创 2019-04-10 08:37:48 · 1215 阅读 · 0 评论 -
xwiki开发者指南-一分钟创建App
描述此应用程序的目的是让终端用户使用XWiki功能强大的结构化数据管理系统,以尽可能少的步骤创建协作Web应用程序。重点解决的是创建应用程序时候最常见的用例。我们没有尝试包含所有类型的功能(如通知、复杂的字段或工作流)。这些可以通过编程来添加。从XWiki Enterprise 4.2版本开始,可以在"Applications"面板找到此应用程序的入口。在这里,你可以看到现...原创 2019-04-11 10:20:30 · 1315 阅读 · 0 评论 -
xwiki开发者指南-编写XWiki渲染宏
这些教程解释了如何使用xwiki的渲染架构来实现XWiki宏。XWiki渲染宏(只适用XWiki语法2.0)可以在Java或直接在wiki页面编写:渲染宏Java编写教程 渲染宏在wiki页面编写教程...原创 2019-04-09 10:38:52 · 1123 阅读 · 8 评论 -
xwiki开发者指南-编写事件监听器
XWiki支持通知(又名Observation Events),当一个文档被修改,一个文档对象被修改或者一个wiki被创建时可以做一些动作。查看Observation参考文档了解更多内容。有几种方法来编写事件侦听器,以应对一些事件:用Java,作为一个XWiki组件 在一个wiki页面,作为一个Wiki组件 在Wiki页面,使用Groovy,通过编写一个XWiki组件并手动注册本教...原创 2019-04-09 10:38:05 · 1035 阅读 · 0 评论 -
xwiki开发者指南-GroovyClassHelloWorld教程
一般情况下,是不建议在xwiki页面创建一个Groovy类,通常更好的方式是用Java创建代码,然后通过Script Services在XWiki页面调用。然而,在少数情况下是需要的,如当在一个wiki页面创建一个Groovy类,在其他wiki页面复用。XWiki语法2.0+创建一个页面,例如Groovy.HelloWorldClass包含: 此页面必须由具有编程权限的用户保存。...原创 2019-04-09 10:37:36 · 1654 阅读 · 35 评论 -
xwiki gzip压缩页面
参考https://blog.youkuaiyun.com/qq_33873431/article/details/80388743GZip压缩,是一种网站速度优化技术,也是一把SEO优化利器,许多网站都采用了这种技术,以达到提升网页打开速度、缩短网页打开时间的目的。1、下载jetty-servlets 9.2.3.v20140905相关的jetty-continuation je...原创 2016-03-01 17:29:57 · 1145 阅读 · 26 评论 -
xwiki概念-第二代wiki
第一代wiki是用于内容协作。第二代wiki(又名应用程序wiki)可用于创建协作式Web应用程序。xwiki既可以用于第一代wiki也可以用于第二代wiki。如今大多数用户的需求是不能满足的,因为开发小型应用时,花费的时间又长成本又高。实际上很多即席报表、即席应用等是用如Microsoft Excel工具开发的。然而,涉及到开发一个协作Web应用程序的工具,Excel是不合适的。对于这些,像...原创 2018-05-19 12:38:19 · 2632 阅读 · 14 评论 -
xwiki架构
XWiki是什么?XWiki是一个第二代Wiki、开发协作式web应用的运行时平台。它非常灵活,你可以在XWiki运行时修改任何部分,以符合你的需求。总体架构XWiki是一个部署在servlet容器的webapp XWiki是由扩展程序(Extensions)组成 一些扩展程序是核心部分,他们需要XWiki正确的执行 其他扩展程序可以在XWiki运行时安装,提供额外的...原创 2018-05-19 12:38:15 · 2052 阅读 · 29 评论 -
xwiki数据库介绍
此图显示了内部类到数据库表的映射表格顶部左边表示表名(如xwikidoc),右边表示Java类(如XWikiDocument)表格第二行起,在左边列表示表中列的名称,在右边列表示可以通过对应类get方法访问这些值通过sql查询语句:SELECT doc.XWD_TITLE FROM xwikidoc AS doc WHERE doc.XWD_FULLNAME = 'Main.WebHom...原创 2018-05-19 12:38:08 · 2103 阅读 · 11 评论 -
xwiki源码介绍
所有XWiki源码都托管在GitHub。XWiki 是OW2 项目,但我们使用的GitHub来存储我们的源码。你可以在GitHub浏览代码库以及下载/克隆源码你也可以用以下工具浏览/搜索我们的源码,但他们已被转移到Git,所以你只能找到老数据:SVN Search顶级项目XWiki不是一个单一的产品,而是多个项目组成的生态系统。这些是由xwiki开发团队(又名XWiki ...原创 2018-05-19 12:38:03 · 2763 阅读 · 35 评论 -
xwiki开发者指南-XWiki API 参考文档
XWiki开发团队考虑到安全使用(即,保证后向兼容性)。我们可以从Java或直接从wiki页面使用一个脚本语言(Velocity, Groovy, Python, Ruby等)调用API。作为XWiki API的使用者,你需要知道一些要点:你不应该使用一个class里面有internal关键字。这意味着这个class不是一个public API以及XWiki开发者可以在任何时候改变它。如...原创 2019-04-11 14:10:08 · 1612 阅读 · 0 评论 -
xwiki开发者指南-数据模型
XWiki不只是一般的wiki引擎;它暴露了可以在表现层加以利用的数据模型。结合其强大的脚本功能,XWiki数据模型可以帮助你构建简单到复杂的应用程序而几乎不需访问XWiki核心部分。换句话说,你可以通过XWiki的Web界面构建自定义应用程序而无需编译,打包和部署软件组件。本次教程为想要在表现层构建应用程序的用户解释XWiki数据模型:类,属性和对象。这将帮助你了解如何在表现层通过编程来实现...原创 2019-04-09 10:19:48 · 1487 阅读 · 43 评论 -
xwiki开发者指南-脚本
脚本可以让你在XWiki页面(或者视图)无需编译代码或部署软件组件来创建基本到复杂的Web应用程序。换句话说,你可以除了wiki和HTML语法之外使用脚本语法来编写XWiki页面的内容。XWiki集成了jsr-223scripting。你可以使用通用的Script Macro来使用几种可用的语言或使用以下特定宏:Velocity Macro(XWiki Enterprise默认安装)...原创 2019-04-09 10:28:46 · 1698 阅读 · 43 评论 -
xwiki开发者指南-脚本API指南
本次指南覆盖main XWiki,可以在wiki页面通过脚本使用的API。这并不意味着全面。对于其他你需要查看XWiki参考API页面。请注意,虽然大多数的例子都用Velocity编写,但你可以使用任何其他脚本语言来访问相同的API。查询文档查看查询模块了解有关如何在wiki使用脚本语言执行查询的例子。创建一个新文档Velocity的例子:##Note that get...原创 2019-04-09 10:30:40 · 1816 阅读 · 10 评论 -
xwiki开发者指南-前端资源
这部分是一个进展中的工作。本节旨在为XWiki应用程序开发者和XWiki产品开发者记录所有前端资源。前端资源主要有两种类型:外部库 内部组件前端资源主要由JavaScript库,CSS样式表和相应的可重复使用的HTML代码片段(或velocity宏来输出代码片段) 和velocity宏。在默认情况下,这里介绍的一些资源没有被所有HTML渲染的wiki页面(太多要发送到客户端!)包...原创 2019-04-09 10:31:33 · 1179 阅读 · 0 评论 -
xwiki开发者指南-保存数据
有些时候,你想保存数据。XWiki平台可以根据你的需要提供不同的存储地方。下面是你所有的选择。临时存储执行上下文如果要保存的数据只要保存一个请求的持续时间(即一个XWiki URL的调用),那么你应该在Execution Context声明一个属性。例如,在一个组件(Java):import org.xwiki.execution.*;@Inject Execution e...原创 2019-04-09 10:32:11 · 1430 阅读 · 0 评论 -
xwiki开发者指南-FAQ教程
这些教程将告诉你如何建立一个常见问题解答(FAQ)应用程序,就像你在这个FAQ页面看到的。我们提供2个教程:一个是使用一分钟创建App,这是推荐给新用户,而且你不需要会任何一个技术知识。 另一个使用XWiki的概念Classes(类)/Objects(对象)/Templates(模板),这是一分钟创建App底层用到的技术。一分钟创建App是一个通过向导的方式来让你创建一个应用,如果你希望...原创 2019-04-09 10:37:06 · 1309 阅读 · 1 评论 -
xwiki开发者指南-URL架构
这是URL进入一个XWiki实例时,对它的处理:具体:当解析一个传入的URL,Routing Filter使用一个默认资源类型解析器(ResourceTypeResolver)组件从URL(资源类型为URL指向类型例如一个实体,如果URL指向文档例如一个WebJar URL,一个皮肤URL,一个REST URL等)提取资源类型(ResourceType)。默认的资源类型解析器将读取XW...原创 2019-04-09 10:32:37 · 1254 阅读 · 0 评论