Eric van der Vlist wrote:

> I didn't mean to require a detailed explanation :-) ...
>
> If I want to implement dynamic outputs (even without caching for the
> time being), which of these methods do I need to implement and what is
> the minimal implementation?

Whether the output is dynamic or not, you just implement
createOutput() and make sure that you return a ProcessorOutput
object. If you know your processor has only a "data" output, for
example, you don't need to even check on the "name", but if you have
several outputs, you do need to check on the "name" attribute probably
to create different outputs depending on their name. For test, you can
just return instances of the same class.

> I must be missing something since when I try this (very sub-minimal)
> implementation:

[...]

> I get the following exception:
>
> 2005-02-08 18:19:31,141 ERROR org.orbeon.oxf.pipeline.InitUtils null - Exception with no location data
> java.lang.NullPointerException
> at org.orbeon.oxf.processor.JavaProcessor$1.readImpl(JavaProcessor.java:68)
> at org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:945)
> at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl$ConcreteProcessorFilter$ForwarderProcessorOutput.read(ProcessorImpl.java:899)
> at org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:340)
> at org.orbeon.oxf.processor.ProcessorImpl.readInputAsSAX(ProcessorImpl.java:345)
> at org.orbeon.oxf.processor.DebugProcessor$1.readImpl(DebugProcessor.java:62)
> at org.orbeon.oxf.processor.ProcessorImpl$6.read(ProcessorImpl.java:945)
> at org.orbeon.oxf.processor.ProcessorImpl$ProcessorOutputImpl.read(ProcessorImpl.java:1106)
>
> (note that the exception is raised by the xml serialzer and that I don't
> see my processor in the stack.


The code hasn't reached your code yet: it tries to find a certain
output and NPEs on it. Can you try to make sure that there is no stale
version of the generated class file in your temp directory? Can you
also put some System.out or similar (or use a debugger) in your
createOutput() to see with what name that method is called?

-Erik


------------------------------------------------------- SF email is sponsored by - The IT Product Guide Read honest & candid reviews on hundreds of IT Products from real users. Discover which products truly live up to the hype. Start reading now. http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click _______________________________________________ orbeon-user mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/orbeon-user

Reply via email to