On Thu, Dec 18, 2008 at 6:29 PM, Thomas Mortagne
<[email protected]> wrote:
> On Thu, Dec 18, 2008 at 6:27 PM, Thomas Mortagne
> <[email protected]> wrote:
>> On Thu, Dec 18, 2008 at 5:38 PM, Juergen Lorenz Simon <[email protected]> 
>> wrote:
>>> Hi,
>>>
>>> On 18.12.2008, at 15:08, Thomas Mortagne wrote:
>>>
>>>> On Thu, Dec 18, 2008 at 3:03 PM, Juergen Lorenz Simon <[email protected]
>>>> > wrote:
>>>>> Hi,
>>>>>
>>>>> On 18.12.2008, at 14:37, Thomas Mortagne wrote:
>>>>>
>>>>>> On Thu, Dec 18, 2008 at 1:54 PM, Juergen Lorenz Simon <[email protected]
>>>>>>> wrote:
>>>>>>> Hi Thomas,
>>>>>>>
>>>>>>> no, I do not create a context myself. I'm running this in Eclipse
>>>>>>
>>>>>> But where do you get the XWikiContext you give to
>>>>>> createExternalURL() ?
>>>>>
>>>>>
>>>>> When the indexing plugin is instantiated I grab the context:
>>>>>
>>>>>    public IndexUpdater(XWiki wiki, XWikiContext context) {
>>>>>       this.xwiki = wiki;
>>>>>       this.context = context;
>>>>>    }
>>>>>
>>>>> Which is obtained from XWiki at plugin initialization time:
>>>>>
>>>>> public void init(XWikiContext context) {
>>>>>       ...
>>>>>        // initialize the actual plugin
>>>>>       indexUpdater = new IndexUpdater(context.getWiki(), context);
>>>>>       indexUpdater.start();
>>>>>
>>>>>       // Hook into the document change notifications
>>>>>       DocChangeRule docChangeRule = new DocChangeRule(indexUpdater);
>>>>>
>>>>> context
>>>>> .getWiki().getNotificationManager().addGeneralRule(docChangeRule);
>>>>> }
>>>>>
>>>>> Do you think I should use the context that comes in the notify()
>>>>> method instead?
>>>>
>>>> No need, even if it's cleaner but it should be exactly the same java
>>>> object I think, so I don't understand why your context's request
>>>> object is wrong.
>>>> Could you send you full stack trace ?
>>>
>>>
>>> Of course. But it's exactly as it was:
>>>
>>> java.lang.NullPointerException
>>>        at com.xpn.xwiki.XWiki.getServletPath(XWiki.java:4317)
>>>        at
>>> com
>>> .xpn
>>> .xwiki
>>> .web.XWikiServletURLFactory.addServletPath(XWikiServletURLFactory.java:
>>> 208)
>>>        at
>>> com
>>> .xpn
>>> .xwiki
>>> .web.XWikiServletURLFactory.createURL(XWikiServletURLFactory.java:178)
>>>        at com.xpn.xwiki.doc.XWikiDocument.getURL(XWikiDocument.java:884)
>>>        at com.xpn.xwiki.doc.XWikiDocument.getURL(XWikiDocument.java:898)
>>>        at com.xpn.xwiki.doc.XWikiDocument.getURL(XWikiDocument.java:903)
>>>        at
>>> com
>>> .kontrast
>>> .vodafone
>>> .portal
>>> .xwiki.plugins.indexer.IndexUpdater.runMainLoop(IndexUpdater.java:192)
>>>        at
>>> com
>>> .kontrast
>>> .vodafone
>>> .portal.xwiki.plugins.indexer.IndexUpdater.run(IndexUpdater.java:118)
>>>
>>
>> You should have more than that, who is calling IndexUpdater.run() ?
>
> Don't listen to me I answered too quickly :)
>
>>
>>>
>>> this fails also, well, it returns null:
>>>
>>>        String currentServletpath = context.getRequest().getServletPath();

You are using the Tomcat launcher in Eclipse, right ?

>>>
>>> any more ideas? We need the external URL so we can point to Wiki pages
>>> from the index. I could maybe wing it together by constructing the url
>>> in some other way, using the host name from confifuration and some
>>> elaborated guessing on the URL, but that would be brittle and
>>> unpleasant to maintain.
>>>
>>> J.
>>>
>>> _______________________________________________
>>> devs mailing list
>>> [email protected]
>>> http://lists.xwiki.org/mailman/listinfo/devs
>>>
>>
>>
>>
>> --
>> Thomas Mortagne
>>
>
>
>
> --
> Thomas Mortagne
>



-- 
Thomas Mortagne
_______________________________________________
devs mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/devs

Reply via email to