Hi devs,
Trying to fix http://jira.xwiki.org/browse/XWIKI-9753 I found 4
plausible solutions (other than switching to something better than
HTMLCleaner):
1. Provide a PdfHTMLCleaner implementation which inherits
DefaultHTMLCleaner but doesn't omit unknown tags
2. Change the DefaultHTMLCleaner so that it doesn't omit unknown tags
3. Instead of relying on org.htmlcleaner.DefaultTagProvider, use
org.htmlcleaner.ConfigFileTagProvider with a custom tag configuration
that allows all HTML5+SVG+MathML, which is a good idea if we want to
switch to HTML5 in the future
4. Add another custom key for HTMLCleanerConfiguration for switching
this unknown tags setting on or off
Which do you prefer?
1 is quick to implement, but might introduce some other regressions in
the PDF export if we're allowing all unknown tags
2 might be a dangerous change, which will break other things
3 is a clean fix, but involves some work
4 is also quick to implement, but it means adding another custom setting
that limits the possible choices for the HTMLCleaner backend
I vote for 4 as a quick fix, with 3 as a long term goal. WDYT?
--
Sergiu Dumitriu
http://purl.org/net/sergiu/
Hi devs,
Today is Bug Fixing Day 46.
We're currently at -127 bugs (we were at -127 bugs last week!) for the 1600 days period:
http://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=10352
Bugs still seem to be winning ATM. Let's reduce this gap a bit...
IMPORTANT:
Since we're getting close to the end of the 5.x cycle and since this is RC time please be very careful about your commits and don't commit anything dangerous. Be on the safe side. It's better to do less bugs rather than commit regressions. We've been having issues of stability recently and they might have been added during BFD so we need to be careful.
NOTE:
Since we're again very late for 5.3 I think it's acceptable that some committers continue their work for 5.3 RC1 and final today instead of participating to this BFD.
Here's the BFD#46 dashboard to follow the progress during the day:
http://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=11798
Thanks
-Vincent
Hi devs,
This is a very important question so think carefully. Let me explain:
In XWiki (model) we have a few entity types. There are *wikis* which
have *spaces* which have *documents*. A document can have *objects*
and *attachments*. A document can also define a *class*.
At the same time we like to say that in XWiki "everything is a
document" because everything revolves around documents. The document
is the central notion.
We can query the database (using HQL or XWQL) for any of the
previously mentioned entities but what should a Solr query return
(semantically)? In other words:
* are you searching for an object without caring about the document
that holds the object? Same for an object property.
* how often are you searching for an attachment without caring about
the document that holds the attachment?
* are you searching for a class or for the document that defines that class?
* are you searching for a wiki without caring about the documents it
contains? Same for a space.
IMO the result of a Solr query should be, semantically, a list of
documents. But maybe I'm wrong.
-----------------------
Technical Details
-----------------------
Unlike a relational database, Solr/Lucene index has a single 'table'.
So normally you index a single entity type. Each row in the index
represents an entity of that type. As a consequence the result of a
Solr query is semantically a list of entities of that type. In our
case the entity type is (naturally) *document*.
If you want to index more entity types (e.g. index attachments and
objects _separately_, not as part of a document) then, since there is
only one 'table' in the index, you need to add a 'type' column that
specifies the type of entity you have on each row (e.g. type=document,
type=attachment, type=object etc.). The result of a Solr query is now,
semantically, a list of different entity types, unless you filter by a
specific type. It smells like a hack to me.
Let's imagine what happens if we want to search for blog posts that
has a specific tag. With the first approach this is easy because all
the (indexed) information is on a single row. With the second approach
this is considerably more complex because the information is spread on
multiple rows:
* one row with type=document for the blog post document
* one row with type=object for the blog post object
* one row with type=object for the tab object
In a relational database when you have the information spread in
multiple places (tables) you do joins. Fortunately (you would says)
Solr supports joins. In this particular case we would have to perform
2 joins which means:
index X index X index
where X represents the cartesian product. The document name would be
the join key. Pretty complex even before trying to write this in Solr
query syntax..
So basically the question becomes: is it worth indexing more entities
_separately_ instead of indexing just documents (with info about their
objects and attachments) considering the complexity that it brings in
writing Solr queries? Do we search for objects and attachments alone
as separate entities often enough to justify this complexity? My
answer is no.
Thanks,
Marius
hi,all:
when I got help from xwiki.org,I can not find useful message about how to develop in xwiki pages.
I describe what I want to do:I just has some information to write on xwiki on one page,because these information may change everyday,so I want to get these information from a http api,and then put it down in wiki,I can not find one complete example in xwiki.org website:how to use this scripts in xwiki and where should i put these scripts file in? how these script files cooperates?
thanks
Hello,
I researched the forum to see if a subject could meet my need, but I have
not found a solution.
My need: I want to make a day depending on the user group selection list
select from a list.
For lists, I use the wiki groups and users of xwiki.
I want to retrieve the list of xwiki users in the selected group.
To create the list of groups I used the velocity, by cons I think to create
the user must use javascript because every time we change the group must
make days the list of users.
This is the part I select the group name but how do I find the list of users
in this group?
Thank you in advance, I am at your disposal for any further information!
Regards,
Matthieu Le Bihan
--
View this message in context: http://xwiki.475771.n2.nabble.com/Retrieve-the-list-of-users-based-on-the-s…
Sent from the XWiki- Dev mailing list archive at Nabble.com.
Hi all,
I'm new to XWiki development and trying to include XWiki rendering into my
project. Unfortunately I'm getting the attached error message. Can anyone
help me please?
I'm using Maven 3, Glassfish 4.0, CDI1.1, JSF 2.2, and XWiki 5.2.1.
Please let me know if you need any further information.
Thanks for your help.
Best regards, Gerry
Error message:
2013-11-23T18:26:10.507+0100|SEVERE: Exception during lifecycle processing
org.glassfish.deployment.common.DeploymentException: CDI deployment
failure:WELD-001414 Bean name is ambiguous. Name xwiki/2.1 resolves to beans
[Managed Bean [class
org.xwiki.rendering.internal.parser.xwiki21.XWiki21Parser] with qualifiers
[@Default @Named @Any], Managed Bean [class
org.xwiki.rendering.internal.renderer.xwiki21.XWikiSyntaxRendererFactory]
with qualifiers [@Default @Named @Any], Managed Bean [class
org.xwiki.rendering.internal.renderer.xwiki21.XWikiSyntaxBlockRenderer] with
qualifiers [@Default @Named @Any], Managed Bean [class
org.xwiki.rendering.internal.renderer.xwiki21.reference.XWiki21ResourceReferenceTypeSerializer]
with qualifiers [@Default @Named @Any]]
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:225)
at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
at
org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:328)
at
com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
at
com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
at
org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:356)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
at
com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:534)
at
com.sun.enterprise.v3.admin.AdminAdapter.onMissingResource(AdminAdapter.java:224)
at
org.glassfish.grizzly.http.server.StaticHttpHandler.service(StaticHttpHandler.java:297)
at
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
at
org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at
org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at
org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at
org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at
org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at
org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at
org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at
org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at
org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at
org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at
org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at
org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at
org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at
org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at
org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at
org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:724)
Caused by: org.jboss.weld.exceptions.DeploymentException: WELD-001414 Bean
name is ambiguous. Name xwiki/2.1 resolves to beans [Managed Bean [class
org.xwiki.rendering.internal.parser.xwiki21.XWiki21Parser] with qualifiers
[@Default @Named @Any], Managed Bean [class
org.xwiki.rendering.internal.renderer.xwiki21.XWikiSyntaxRendererFactory]
with qualifiers [@Default @Named @Any], Managed Bean [class
org.xwiki.rendering.internal.renderer.xwiki21.XWikiSyntaxBlockRenderer] with
qualifiers [@Default @Named @Any], Managed Bean [class
org.xwiki.rendering.internal.renderer.xwiki21.reference.XWiki21ResourceReferenceTypeSerializer]
with qualifiers [@Default @Named @Any]]
at org.jboss.weld.bootstrap.Validator.validateBeanNames(Validator.java:639)
at
org.jboss.weld.bootstrap.Validator.validateDeployment(Validator.java:488)
at
org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:536)
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:216)
... 36 more
2013-11-23T18:26:10.509+0100|SEVERE: Exception while loading the app
2013-11-23T18:26:10.509+0100|SEVERE: Undeployment failed for context
/jasp-webapp
2013-11-23T18:26:10.556+0100|SEVERE: Exception while loading the app : CDI
deployment failure:WELD-001414 Bean name is ambiguous. Name xwiki/2.1
resolves to beans [Managed Bean [class
org.xwiki.rendering.internal.parser.xwiki21.XWiki21Parser] with qualifiers
[@Default @Named @Any], Managed Bean [class
org.xwiki.rendering.internal.renderer.xwiki21.XWikiSyntaxRendererFactory]
with qualifiers [@Default @Named @Any], Managed Bean [class
org.xwiki.rendering.internal.renderer.xwiki21.XWikiSyntaxBlockRenderer] with
qualifiers [@Default @Named @Any], Managed Bean [class
org.xwiki.rendering.internal.renderer.xwiki21.reference.XWiki21ResourceReferenceTypeSerializer]
with qualifiers [@Default @Named @Any]]
org.jboss.weld.exceptions.DeploymentException: WELD-001414 Bean name is
ambiguous. Name xwiki/2.1 resolves to beans [Managed Bean [class
org.xwiki.rendering.internal.parser.xwiki21.XWiki21Parser] with qualifiers
[@Default @Named @Any], Managed Bean [class
org.xwiki.rendering.internal.renderer.xwiki21.XWikiSyntaxRendererFactory]
with qualifiers [@Default @Named @Any], Managed Bean [class
org.xwiki.rendering.internal.renderer.xwiki21.XWikiSyntaxBlockRenderer] with
qualifiers [@Default @Named @Any], Managed Bean [class
org.xwiki.rendering.internal.renderer.xwiki21.reference.XWiki21ResourceReferenceTypeSerializer]
with qualifiers [@Default @Named @Any]]
at org.jboss.weld.bootstrap.Validator.validateBeanNames(Validator.java:639)
at
org.jboss.weld.bootstrap.Validator.validateDeployment(Validator.java:488)
at
org.jboss.weld.bootstrap.WeldBootstrap.validateBeans(WeldBootstrap.java:536)
at org.glassfish.weld.WeldDeployer.event(WeldDeployer.java:216)
at org.glassfish.kernel.event.EventsImpl.send(EventsImpl.java:131)
at
org.glassfish.internal.data.ApplicationInfo.load(ApplicationInfo.java:328)
at
com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:493)
at
com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219)
at
org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:527)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:523)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAs(Subject.java:356)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:522)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:546)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1423)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1500(CommandRunnerImpl.java:108)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1762)
at
com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1674)
at
com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:534)
at
com.sun.enterprise.v3.admin.AdminAdapter.onMissingResource(AdminAdapter.java:224)
at
org.glassfish.grizzly.http.server.StaticHttpHandler.service(StaticHttpHandler.java:297)
at
com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:246)
at
org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:191)
at
org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:168)
at
org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:189)
at
org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
at
org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:288)
at
org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:206)
at
org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:136)
at
org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:114)
at
org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
at
org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:838)
at
org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:113)
at
org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:115)
at
org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:55)
at
org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:135)
at
org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:564)
at
org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:544)
at java.lang.Thread.run(Thread.java:724)
Relevant dependencies from pom.xml:
<dependency>
<groupId>org.xwiki.rendering</groupId>
<artifactId>xwiki-rendering-syntax-xwiki21</artifactId>
<version>5.2.1</version>
</dependency>
<dependency>
<groupId>org.xwiki.commons</groupId>
<artifactId>xwiki-commons-component-default</artifactId>
<version>5.2.1</version>
</dependency>
<dependency>
<groupId>org.xwiki.rendering</groupId>
<artifactId>xwiki-rendering-macro-toc</artifactId>
<version>5.2.1</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.13</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>1.7.5</version>
</dependency>
--
View this message in context: http://xwiki.475771.n2.nabble.com/XWiki-Rendering-WELD-001414-Bean-name-is-…
Sent from the XWiki- Dev mailing list archive at Nabble.com.
Hi guys,
I am proud to announce WebViewers are now available for XWiki.
As part of the Resilience research project, I and others have been working on a
compatible solution for interfacing the variety of Javascript file viewers and
editors with the many available web application frameworks. The first few
WebViewers are available now on http://webviewers.org/ and as self-contained
archive files, are installable on any system supporting the API.
More interestingly, the first few WebViewers to be ported are now available as
XWiki Extensions on http://extensions.xwiki.org/xwiki/bin/view/ExtensionCode/ExtensionSearch?sp…
and while they are largely prototypes, one which is useful right now is the
PDF WebViewer based on Mozilla's pdf.js.
http://extensions.xwiki.org/xwiki/bin/view/Extension/pdf+webviewer
This is of course installable with the Extension Manager and supports XWiki
versions 5.1 or newer.
With this you will be able to both view in a preview window and embed in a wiki
page, the content of a PDF attachment. Viewing of the attachment is done by
clicking on the magnifying glass shown next to the PDF attachment and embedding
a PDF attachment in the page is done using the {{embed}} macro (part of the
XWiki WebViewers extension).
You can see the embedded viewers and example uses of the {{embed}} macro here:
http://webviewers.org/xwiki/bin/view/Viewers/Demo
And you can see the magnifying glass icons next to the attachments here:
http://webviewers.org/xwiki/bin/view/Viewers/Demo#Attachments
If anyone has any questions or comments about WebViewers or the XWiki Extensions,
I'd love to hear them.
Thanks,
Caleb
Hi devs.
Thomas has merged my pull request for the new wiki API. I'm happy!
Now, xwiki-platform-wiki-manager and xwiki-platform-workspaces are
obsoletes. We should delete them or move them to xwiki-contrib.
Here is my +1 for the move!
Thanks
Louis-Marie
Hi devs,
Today is Bug Fixing Day 45.
We're currently at -127 bugs (we were at -112 bugs last week!) for the
1600 days period:
http://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=10352
Bugs seem to be winning ATM. Let's reduce this gap...
IMPORTANT:
Since we're getting close to the end of the 5.x cycle and since this is RC
time please be very careful about your commits and don't commit anything
dangerous. Be on the safe side. It's better to do less bugs rather than
commit regressions. We've been having issues of stability recently and they
might have been added during BFD so we need to be careful.
NOTE:
Since we're late for 5.3 (I'm going to send a new date proposal), I think
it's acceptable that some committers continue their work for 5.3 RC1 and
final today instead of participating to this BFD. Your decision ofc ;)
Here's the BFD#45 dashboard to follow the progress during the day:
http://jira.xwiki.org/secure/Dashboard.jspa?selectPageId=11796
Thanks
-Vincent