首页
学习
活动
专区
圈层
工具
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

xwiki开发者指南-一分钟创建App

我们没有尝试包含所有类型的功能(如通知、复杂的字段或工作流)。这些可以通过编程来添加。...定制 开始自定义应用程序之前,你应该了解: 什么是应用程序 如何在XWiki定义结构化数据 如何在XWiki使用表格(sheet)展示结构化数据 如何在XWiki使用服务器端脚本处理结构化数据 应用程序结构...代码页面在code组下,并标记为隐藏(所以默认情况下你的用户不会看到它们)。...) sheet,用于显示和编辑应用程序条目(如 Holiday RequestSheet) template,当创建一个新的应用程序条目,编辑时提供默认值 (如Holiday RequestTemplate...要做到这一点,你只需要添加的 "External Image" 属性类型, 并设置元属性的默认值。基本上,当你在应用程序中添加新的"External Image"字段时,该属性模板将被会复制。

8.3K30

xwiki开发者指南-脚本API指南

查询文档 查看查询模块了解有关如何在wiki使用脚本语言执行查询的例子。...例如,在Velocity,访问请求中传递的action HTTP参数,可以这样写: $request.action 请注意,这有一个快捷方式: $request.get("action") 获取外部内容...如果你有一个Velocity脚本,使用display(propertyName)方法来访问包含页面的一个对象的属性,你想在其他地方include,你必须使用includeForm() Velocity宏...从任何页面访问对象和在相同类遍历所有对象 这里是Velocity脚本来显示它是如何从另一个页面访问页面中的对象,并读取其字段: (类似于先前的代码,除了你需要在$xwiki.getDocument之前...重定向到另一个页面 例如:当一个页面已经被删除,你要让旧的页面重定向到新的页面。

1.5K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    xwiki功能-页面编辑

    Save & Continue: 保存并继续按钮提交本次的修改,并停留在当前的编辑模式。 Save & View:保存并查看按钮,提交当前的变化,并返回到文档视图模式。...表单编辑模式(又叫内嵌模式) 内联模式或表单模式,这是XWiki的特殊功能,即允许管理员定义结构化信息(如博客条目,或标准的财务表单)。含有这种结构化信息的页面可以被编辑和以简单的HTML表单编辑。...技术上内嵌模式是由XWiki语法1.0或2.0来根据下面不同的算法自动触发: XWiki语法1.0:如果页面包含#includeForm()调用 XWiki语法2.0:如果页面包括其他页面并带有XWiki.SheetClass...当一个页面没有设置标题,那么XWiki会试图通过提取文档最上面的标题内容。例如,如果你有一个一级标题,它会被用来作为页面标题。如果你没有一个一级标题,但有一个二级标题则二级标题将被用作页面的标题。...目前,标题内容使用Velocity来解析,所以允许你写Velocity内容到标题(当希望做个国际化标题时很有用)。

    2.2K10

    xwiki管理指南-配置

    最后,你还可以通过修改WEB-INF/xwiki.cfg文件强制在设置中只能指定一种语言。...当xwiki运行于反向代理之后,转化https为http,这将很有用。 短网址 参阅配置XWiki短网址了解更多信息。...editor=class)并添加以下TextArea属性: style 包含的CSS规则,这将覆盖默认pdf.css的值;默认情况下,pdf.css不会出现在你的文件系统中,但是你可以在\webapps...\xwiki\templates\下创建,或者在你的皮肤页面指定它 xhtmlxsl 包含XHTML2FO XSL转换,这将替代默认的 fopxsl 包含FOP XSL转换,这将替代默认的 ?...假设你的wiki页面包含一个表格,你必须在“wiki”的模式进行编辑并添加样式,如下图所示: (% class="mytable" %) |=Column 1|=Column 2 | data|data

    4K21

    xwiki开发者指南-编写一个XWiki组件

    你应该先阅读XWiki组件的参考文档。 让我们开始吧! 在下面的教程中,我们将引导你写一个简单的组件,帮助你快速学习XWiki组件,并解释它是如何工作的。...对于组件化的代码,你应该在“编译时”依赖声明(如之前注解所示),如果你需要在运行时解决组件的依赖,使用的ComponentManager,你可以通过实现组合接口访问,如组件模块参考里描述。...总之,如果你想获得执行上下文(包含了上下文信息),你必须声明的Execution组件(位于xwiki-commons-context模块)并注入,你可以这样写: /** Provides access...这样做,你将无法访问的所有属性,如当前用户的名称或URL factory,但是你可以访问任何在XWikiContext map里面的内容。...配置运行中的XWiki实例的本地扩展仓库指向你Maven的本地仓库。

    75610

    xwiki管理指南-短网址

    在Jetty中,在默认配置下,所需要的是在webapps并在其下名为root的子目录部署XWiki Web应用程序。...请注意,如果你使用的是打包的zip安装的xwiki(包含jetty和HSQLDB),那么你还需要: 除去现有的webapps/root目录 把现有的webapps/xwiki目录重命名为webapps...此外,从XWiki 6.2.8/6.4.3/7.0开始,当以ROOT部署,你必须到xwiki.cfg配置文件设置xwiki.webapppath为空,如下所示: xwiki.webapppath= II...: 其他XWiki GWT Servlet /redirect:XWiki Redirect Servlet,当URL没有指定的页面,重定向到主页 有以下替代方式来实现: UrlRewriteFilter...因此,这告诉我们想要对文件的操作,如/view/ , /edit/或者/delete/。 可以让XWIki忽略view action。

    2.4K10

    xwiki管理指南-安装教程

    XWiki是一款基于java所编写的wiki,它可以运行在如Tomcat,Jetty,JBoss,WebLogic,WebSphere等Servlet容器上并利用关系型数据库(HSQL, MySQL等)...如下介绍3种安装XWiki的方式: 使用已包含Servlet容器(Jetty)和数据库(HSQL)并带有默认wiki首页的打包版本的XWiki安装。...使用war包(适用于生产环境) 此版本包含一个可以在Java容器(如Tomcat)或者其他操作系统上进行安装的Java程序。...因此你需要配置让XWiki知道你的代理服务器。 XWiki使用Apache httpclient中的默认java代理设置。...安装已打包好的XWiki版本,当中已经包含了一系列默认的wiki页面。 请不要使用安装向导并使用XAR导入的特性来导入wiki的页面

    2.7K20

    xwiki功能-导出

    这里有一项正在进行的工作。然而,可以通过以下说明导出一组页面。 PDF导出 从XWiki企业3.1开始,PDF导出也有一个UI界面来管理PDF导出 ?...当指定pages参数,在URL中指定的当前文档是没有用的 includechilds: 该值是一个数字,指定在PDF导出中包含子页面的深度。...例如&includechilds=2将包含导出页面的所有孩子以及其孩子的孩子。 includelinks: 该值是一个数字,指定在PDF导出中包含链接页面的深度。...要导出XAR按照上面的说明使用操作菜单或使用以下类型的URL(请注意,在URL中的空间/页面部分被忽略,导出操作只考虑页面查询字符串参数): http://server/xwiki/bin/export...license: 定义许可证,指定XAR导出的license,这将当重新导入XWiki实例时可以看到。 version: 定义版本,规定了导出XAR的版本。

    96420

    xwiki功能-XWikiRESTfulAPI

    XWiki通过一个基于HTTP语义的API来访问几乎每一个元素,即RESTful API。在本页中,你会发现这个API的所有细节,并利用这个API充分发挥它的优势。...对象是包含一组属性的类的实例。有些对象可能会被直接公开为类的实体,如注释和tags。对象和附件一样,被页面不同翻译间共享。...该图通过从API入口点开始,客户端可以导航并只是通过下列中的表示中提供的链接(和通过知道它们的语义)发现的所有资源。这正是如何生成该图的方式。...q参数中包含相应的查询。查看在Velocity的HQL查询例子, XWiki查询语言规范, Lucene插件和SOLR查询API例子。...当客户端需要理解包含在对象(例如,当他们想要显示它)数据类型时,返回一个对象(即,所有元素) 的信息是有用的。当创建一个对象时,它们是没有必要的,因为该系统已经有这个信息。

    2.7K20

    xwiki管理指南-安全

    要启用它,你必须编辑xwiki-dir>/WEB-INF/xwiki.cfg,取消对#xwiki.superadminpassword=system的注释,并设置了正确的密码。...缓解方法 运行在一个像样的操作系统 Java虚拟机上运行XWiki用自己的用户名,只能给该用户分配XWiki需要操作文件的权限,并确保该用户不能通过sudo执行一些命令。...Persistent injection Persistent injection(存储型XSS)的特征在于内容保存在系统中,当用户不知情下加载,在浏览器执行如JavaScript。...通过发布评论进行Persistent injection 可能/已知问题 XWiki 1.0语法没有过滤掉HTML,导致脚本注入可能 XWiki 2.0语法包含HTML宏,当被调用允许注入原生HTML...缓解方法 管理员可以使用一些插件,如noscript,能检测反射注入攻击,当检测到XSS攻击时提醒用户不要点击可疑链接。

    4.2K30

    xwiki管理指南-导入导出

    如果没有,请看安装指南 请按照下列步骤操作: 确保你的数据库和容器启动 在浏览器中输入http://localhost:8080/xwiki/bin/admin/XWiki/XWikiPreferences...否则,所有导入的页面将被为保存为没有编程权限,这会导致脚本将无法正常工作,除非重新保存在具有编程权限用户下 注意,需要编程权限的页面应该还包含一个XWiki.RequiredRightClass...如何做到这一点取决于你使用的容器: 对于 Jetty 需要在 start_xwiki.bat (或者 start_xwiki.sh) 修改JAVA_OPTS=-Xmx300m 如 JAVA_OPTS=-...Xmx1024m 对于Tomcat需要设置 CATALINA_OPTS 如 -Xmx1024m 导入一个扩展程序 当你导入一个XAR时,如果XAR的package.xml包含一个extensionId值...自定义XAR 在做导出时,XWiki页面使用的是XAR格式保存。一个典型的XAR在创建的时候将导出包括你的XWiki实例中的所有页面。但是,你可以使用自定义导出URL来控制。

    1.7K10

    Vim基础用法,最常用、最实用的命令介绍(保姆级教程)

    (vim直接进入的终端,新建的文件保存,给出文件名):wq (保存并退出vim):q!...(不保存强行退出)移动命令h (左)j (下)k (上)l (右)复制、粘贴、剪切/删除、撤销、取消撤销y (复制)yw (向右复制一个单词)yb (向左复制一个单词,不包含自身)vy (复制当前游标对应的字母...$、w、G、f + 任何字符,当前选中的单词转换为大写gu + 任何位置,如:$、w、G、f + 任何字符,当前选中的单词转换为小写文件内搜索/ + 任何字符, 从前往后搜索, (游标会停留在第一个匹配的字符...两者是相反的操作括号匹配% (当有多对括号时,会跳到对应的左括号/右括号, 适用于:(), [], {}, )综合应用如v + f + (任意字符) + d / y:表示先选中当前字符,再通过f +...,右括号也可以di( 删除括号中的内容, 右括号也可以da( 删除选中的内容并且包括括号本身, 右括号也可以退出插入模式ESC

    1.9K00

    xwiki开发者指南-最佳实践

    XWiki应用程序组织 XWiki开发团队的最佳实践 XWiki应用程序组织的最佳实践 (Ludovic Dubost建议) 在Class Sheet文档检查对象是否存在 Class sheet文档应当写入以下结构...(以下例子是检查文档是否包含XWiki.XWikiUsers对象): #set($obj = $doc.getObject("XWiki.XWikiUsers")) #if(!...#end 'if'判断为不存在,XWiki可以提取1 User Sheet为标题,当访问sheet页面时,这是适当的标题,而不是直接显示一些错误信息。...当对non-Javascript UI界面使用xredirect处理错误 当使用Javascript编写一个UI界面时,AJAX负责转发你的action到后台服务来响应成功或者失败,然后在同一页面展示结果...你可以服务中设置错误,并在用户界面中,你可以读取并删除它,以便它只显示一次。 对于后台服务,将其转换为: ...  #elseif ("$!request.xredirect" !

    83710

    【优选算法篇】算法江湖中的碎玉拾光——C++模拟题全解,踏步逐章细细品味

    点赞、收藏与分享:如觉得这篇文章对您有帮助,请点赞、收藏并分享! 分享给更多人:欢迎分享给更多对 C++ 感兴趣的朋友,一起学习字符串操作和模拟题解!...提示: 1 <= s.length <= 100 s 仅包含小写英文字母和 ? 字符 解法(模拟) 算法思路: 纯模拟。我们从前往后遍历整个字符串,当遇到 ?...具体步骤如下: 遍历字符串:使用循环逐个检查字符串中的每个字符。 替换问号:当遇到 ? 时,从 'a' 开始尝试替换,检查替换后的字符是否和前后字符重复。...循环退出条件: 内部循环使用 break,一旦找到合适的字符替换就退出,以减少不必要的循环操作。 时间复杂度和空间复杂度 时间复杂度:O(n),其中 n 是字符串的长度。每次遇到 ?...复用条件:当一只青蛙完成 “croak” 后,可以复用它从 “c” 开始再次叫,减少总青蛙数量。 末尾检查:确保所有青蛙完整叫出“croak”,防止有青蛙停留在中途。

    10510
    领券