Yes I'm using trunk

this is my class

package mypigudf;
import java.io.IOException;
import org.apache.pig.data.TupleFactory;
import org.apache.pig.data.Tuple;
public class DicomParser{
    public Tuple exec(String input) throws IOException {}
}

and after that I follwed this steps

cd H:/apps/mypig
javac -cp pig.jar DicomParser.java
jar -cf mypigudf.jar mypigudf

am I doing something wrong?????

Baraa



On Tue, Mar 22, 2011 at 7:52 PM, Xuefu Zhang <[email protected]> wrote:

> Hi Baraa,
>
> I'm assuming you're using trunk for your experiment. Nevertheless, this
> error basically tells you that Pig cannot instanticate your UDF. Common
> cause is misspelling. Is mypigudf.DicomParser fully qualified class name of
> your UDF? I noticed that mypigudf is the jar file name as well.
>
> Thanks,
> Xuefu
>
> -----Original Message-----
> From: Baraa Mohamad [mailto:[email protected]]
> Sent: Tuesday, March 22, 2011 11:41 AM
> To: [email protected]
> Subject: Failed to generate logical plan
>
> Hi all,
>
> I wrote a simple udf DicomParser which read a line and convert it to tuple
> but when I tried to use like that
>
> register H:/apps/mypig/mypigudf.jar;
> A = load 'dicoms/' using org.apache.pig.piggybank.storage.XMLLoader('attr')
> as (x:chararray);
> B = Foreach A generate mypigudf.DicomParser(x); store B into 'testUdf';
>
>
> I get this error
>
> Pig Stack Trace
> ---------------
> ERROR 1000: Error during parsing. Failed to generate logical plan. Nested
> exception: java.lang.RuntimeException: Cannot instantiate:
> mypigudf.DicomParser
>
> org.apache.pig.impl.logicalLayer.FrontendException: ERROR 1000: Error
> during parsing. Failed to generate logical plan. Nested exception:
> java.lang.RuntimeException: Cannot instantiate: mypigudf.DicomParser
>    at org.apache.pig.PigServer$Graph.parseQuery(PigServer.java:1568)
>    at org.apache.pig.PigServer$Graph.registerQuery(PigServer.java:1513)
>    at org.apache.pig.PigServer.registerQuery(PigServer.java:581)
>    at
> org.apache.pig.tools.grunt.GruntParser.processPig(GruntParser.java:917)
>    at
>
> org.apache.pig.tools.pigscript.parser.PigScriptParser.parse(PigScriptParser.java:386)
>    at
>
> org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:176)
>    at
>
> org.apache.pig.tools.grunt.GruntParser.parseStopOnError(GruntParser.java:152)
>    at org.apache.pig.tools.grunt.Grunt.exec(Grunt.java:90)
>    at org.apache.pig.Main.run(Main.java:537)
>    at org.apache.pig.Main.main(Main.java:108)
>
> ================================================================================
>
> why i can't use it i didn't find how I can solve this error
>
> Regards
>
> Baraa
>

Reply via email to