I think you only need xwiki-platform-model as a
dependency of your module.
You should paste your code on
to enable us to
understand what is going wrong.
2016-01-12 17:43 GMT+01:00 Giordano Ninonà <giordano.ninona(a)gmail.com>om>:
I got the same behaavior also with the
modifications suggested by
Guillaume.
Any other ideas?
Giordano.
2016-01-12 17:16 GMT+01:00 Giordano Ninonà <giordano.ninona(a)gmail.com>om>:
Hi Guillaume,
Thank you a lot, that really helps! The only thing is which library I
should import :
1. org.xwiki.model.reference
2. org.wiki.rendering.wikimodel
Moreover, there is a place to find how this "reference-game" works? I
mean
that I've found Entity References, Document
References, SpaceReferecens,
Wiki References but I don't understand how this works.
Thank you,
Giordano
2016-01-12 17:05 GMT+01:00 Guillaume "Louis-Marie" Delhumeau <
gdelhumeau(a)xwiki.com>gt;:
> Hi Giordano.
>
> Is it possible for you to modify your method to have a list of spaces
> instead of the space name? Or better: having a DocumentReference as
input?
>
> If not, it means that you need to parse your "wikiSpace" input, get the
> list of spaces from it, and then create a clean DocumentReference.
>
> You should use a SpaceReferenceResolver to get a clean space reference.
>
> Example:
>
> @Inject
> @Named("current")
> private SpaceReferenceResolver<String> spaceReferenceResolver;
>
> public void myMethod(String wikiName, String wikiSpace, String
wikiPage) {
> // resolve the spaces:
> SpaceReference spaceRef = spaceReferenceResolver.resolve(wikiSpace,
new
> WikiReference(wikiName));
> // Create a clean DocumentReference:
> DocumentReference docRef = new DocumentReference(wikiPage, spaceRef);
> // Work with the docRef
> XWikiDocument doc = xwiki.getDocument(docRef, xcontext);
> // ...
> }
>
> Similar code in Groovy:
>
> {{groovy}}
> def spaceReferenceResolver =
>
>
services.component.getInstance(org.xwiki.model.reference.SpaceReferenceResolver.TYPE_STRING,
"current");
def spaceRef = spaceReferenceResolver.resolve("AB.CD\\.E.F", new
org.xwiki.model.reference.WikiReference('hello'));
def docRef = new org.xwiki.model.reference.DocumentReference('page',
spaceRef);
{{/groovy}}
I hope it helps,
Guillaume
2016-01-12 16:27 GMT+01:00 Giordano Ninonà <giordano.ninona(a)gmail.com
:
>
> > Hi users,
> >
> > I have a problem with my Java component. I have a hjava method wich
> take as
> > input 3 strings: wikiName, wikiSpace and the wiki page to retrieve
the
> doc,
> > thus the content and perform modification.
> >
> > Ok, when I try to delete a terminal page inside a nested page, there
is
> no
> > problem, the component retrieve the page's document and can delete
it,
> it
> > works!
> >
> > But when I want to delete a terminal page that is inside a nested
page
> > which is inside another nested page it
stops working. The point is
that
> I
> > can't retrieve the terminal page's document, probably because of the
> > wikiSpace variable.
> > I have tried "NestedPage1.NestedPage2" but it is not woking at all,
it
is
> keep creating and successively deleting new documents(thus pages).
>
> Thank you,
> Giordano.
> _______________________________________________
> users mailing list
> users(a)xwiki.org
>
http://lists.xwiki.org/mailman/listinfo/users
>
--
Guillaume Delhumeau (gdelhumeau(a)xwiki.com)
Research & Development Engineer at XWiki SAS
Committer on the
XWiki.org project
_______________________________________________
users mailing list
users(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/users
_______________________________________________
users mailing list
users(a)xwiki.org
http://lists.xwiki.org/mailman/listinfo/users
--
Guillaume Delhumeau (gdelhumeau(a)xwiki.com)
Research & Development Engineer at XWiki SAS
Committer on the