Hi Matthias,
You should use the Query Module (
http://extensions.xwiki.org/xwiki/bin/view/Extension/Query+Module ) to
search for documents having objects of a specified type (e.g.
QuarXs.NodeTypeClass). Also, the parameter passed to
XWikiDocument#getXObjects(DocumentReference) is the class reference,
i.e. the reference to the document that defines the class (e.g. a
reference to QuarXs.NodeTypeClass document). You can access the
javadoc from 
http://platform.xwiki.org/xwiki/bin/view/DevGuide/API .
Hope this helps,
Marius
On Mon, Oct 14, 2013 at 9:31 PM, Matthias Wegner <mic.mat.wegner(a)web.de> wrote:
  Hello,
 i programmed a class /Node/ which is here used as /n/ and a class /NodeType/
 which is reference by Node. In the ClassBuilder from Node i use this method
 to get the NodeType
 try {
    List<XWikiDocument> docs =
 getXWikiContext().getWiki().getStore().searchDocuments(" ",
 getXWikiContext());
    for (XWikiDocument xWikiDocument : docs) {
       List<BaseObject> objects =
 xWikiDocument.getXObjects(xWikiDocument.getDocumentReference());
       if (objects != null) {
          for (BaseObject bo : objects) {
            if (bo.getName().contains("QuarXs.NodeTypeClass")) {
              DefaultNodeType nt = new DefaultNodeType();
              nt.setName(bo.getStringValue("name"));
              nt.setGuid(bo.getGuid());
              n.setType(nt);
            }
          }
       }
    }
 } catch (Exception ee) {
    System.out.println("Error: " + ee);
 }
 To test this i defined a class from a wiki-page named "NodeTypeClass" in
 Space "QuarXs". But now i used  /AbstractMandatoryDocumentInitializer/ to
 initialize everything. The Initialization works fine and looks great, but
 now my upper method is not working. I can define objects and reference to
 NodeType, but can't find objects of type "NodeType" with the upper method.
 Can you give me a hint?
 I checked it with
 {{groovy}}
    import org.rogatio.quarxs.Node;
    for (Node node :
 services.component.getComponentManager().getInstanceList(Node.class)) {
       println("* "+node.getPrettyId() )
          println("** "+node.getType()) // gives back null. Reason: No
 BaseObject of class "QuarXs.NodeTypeClass" found with upper method
 //      println("** "+node.getType().getName()) // worked fine when i made
 the classes by hand
         }
 {{/groovy}}
 If you like i post my code.
 Regards,
 Matthias
 --
 View this message in context:
http://xwiki.475771.n2.nabble.com/Query-for-self-defined-objects-tp7587586.…
 Sent from the XWiki- Dev mailing list archive at 
Nabble.com.
 _______________________________________________
 devs mailing list
 devs(a)xwiki.org
 
http://lists.xwiki.org/mailman/listinfo/devs