Hello;
Error is like that...

- An error occured while creating stub!

[*java*] org.apache.axis2.AxisFault: *
org.apache.axis2.databinding.ADBException*: Unexpected subelement timeCode

[*java*] at org.apache.axis2.AxisFault.makeFault(*AxisFault.java:417*)

[*java*] at com.cyangate.ffmpeg.client.FFmpegServiceStub.fromOM(*
FFmpegServiceStub.java:621*)

[*java*] at com.cyangate.ffmpeg.client.FFmpegServiceStub.getVideoKeyframes(*
FFmpegServiceStub.java:269*)

[*java*] at
com.cyangate.ffmpeg.client.FFmpegServiceHandler.callGetVideoKeyFrames(*
FFmpegServiceHandler.java:65*)

[*java*] at com.cyangate.ffmpeg.client.FFmpegClient.main(*FFmpegClient.java
:266*)

[*java*] at sun.reflect.NativeMethodAccessorImpl.invoke0(*Native Method*)

[*java*] at sun.reflect.NativeMethodAccessorImpl.invoke(*
NativeMethodAccessorImpl.java:39*)

[*java*] at sun.reflect.DelegatingMethodAccessorImpl.invoke(*
DelegatingMethodAccessorImpl.java:25*)

[*java*] at java.lang.reflect.Method.invoke(*Method.java:597*)

[*java*] at org.apache.tools.ant.taskdefs.ExecuteJava.run(*ExecuteJava.java
:217*)

[*java*] at org.apache.tools.ant.taskdefs.ExecuteJava.execute(*
ExecuteJava.java:152*)

[*java*] at org.apache.tools.ant.taskdefs.Java.run(*Java.java:747*)

[*java*] at org.apache.tools.ant.taskdefs.Java.executeJava(*Java.java:201*)

[*java*] at org.apache.tools.ant.taskdefs.Java.execute(*Java.java:104*)

[*java*] at org.apache.tools.ant.UnknownElement.execute(*UnknownElement.java
:288*)

[*java*] at sun.reflect.NativeMethodAccessorImpl.invoke0(*Native Method*)

[*java*] at sun.reflect.NativeMethodAccessorImpl.invoke(*
NativeMethodAccessorImpl.java:39*)

[*java*] at sun.reflect.DelegatingMethodAccessorImpl.invoke(*
DelegatingMethodAccessorImpl.java:25*)

[*java*] at java.lang.reflect.Method.invoke(*Method.java:597*)

[*java*] at org.apache.tools.ant.dispatch.DispatchUtils.execute(*
DispatchUtils.java:105*)

[*java*] at org.apache.tools.ant.Task.perform(*Task.java:348*)

[*java*] at org.apache.tools.ant.Target.execute(*Target.java:357*)

[*java*] at org.apache.tools.ant.Target.performTasks(*Target.java:385*)

[*java*] at org.apache.tools.ant.Project.executeSortedTargets(*Project.java
:1329*)

[*java*] at org.apache.tools.ant.Project.executeTarget(*Project.java:1298*)

[*java*] at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(*
DefaultExecutor.java:41*)

[*java*] at
org.eclipse.ant.internal.ui.antsupport.EclipseDefaultExecutor.executeTargets
(*EclipseDefaultExecutor.java:32*)

[*java*] at org.apache.tools.ant.Project.executeTargets(*Project.java:1181*)

[*java*] at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.run(*
InternalAntRunner.java:423*)

[*java*] at org.eclipse.ant.internal.ui.antsupport.InternalAntRunner.main(*
InternalAntRunner.java:137*)

[*java*] Caused by: *java.lang.Exception*: *
org.apache.axis2.databinding.ADBException*: Unexpected subelement timeCode

[*java*] at
com.cyangate.ffmpeg.client.FFmpegServiceStub$GetVideoKeyframesResponse$Factory.parse
(*FFmpegServiceStub.java:3716*)

[*java*] at com.cyangate.ffmpeg.client.FFmpegServiceStub.fromOM(*
FFmpegServiceStub.java:608*)

[*java*] ... 28 more

[*java*] Caused by: *org.apache.axis2.databinding.ADBException*: Unexpected
subelement timeCode

[*java*] at
com.cyangate.ffmpeg.client.FFmpegServiceStub$GetVideoKeyframesResponse$Factory.parse
(*FFmpegServiceStub.java:3712*)

[*java*] ... 29 more

It gives error at here:

KeyframeData[] keyframeOutput = ffmpegServiceHandler.callGetVideoKeyFrames(

outputDir + File.*separator* + outputFileName, keyframeParameters,
outputFrames);

*_logger*.debug("Keyframe extraction completed.");



KeyframeData class is here:
*

package* com.cyangate.ffmpeg.services;

*

public* *class* KeyframeData {

*private* String timeCode;

*private* *byte*[] imageData;

*public* String getTimeCode() {

*return* timeCode;

}

*public* *void* setTimeCode(String timeCode) {

*this*.timeCode = timeCode;

}

*public* *byte*[] getImageData() {

*return* imageData;

}

*public* *void* setImageData(*byte*[] imageData) {

*this*.imageData = imageData;

}

}



Ant returning value from* ServiceHandler calls by this way*

FFmpegServiceStub stub =

*new* FFmpegServiceStub("http://localhost:8080/axis2/services/FFmpegService";
);

FFmpegServiceStub.GetVideoKeyframes request = *new*
FFmpegServiceStub.GetVideoKeyframes();



request.setFileName(fileName);

request.setParameters(parameters);

request.setOutputFrames(outputFrames);

FFmpegServiceStub.GetVideoKeyframesResponse response =
stub.getVideoKeyframes(request);

*_logger*.debug("Returned value from getVideoKeyframes is: " +

response.get_return().toString());

returnedValue = response.get_return();

**

*Service code is here"*

**

// Reading keyframes into buffers



List<KeyframeData> keyframes = *new* ArrayList<KeyframeData>();

File dir = *new* File(outputFrames);

Collection files = FileUtils.*listFiles*(dir.getParentFile(), *new*String[]{
"jpg"}, *false*);

Iterator i = files.iterator();

*while* (i.hasNext())

{

File file = (File)i.next();

*try

*

{

KeyframeData keyframe = *new* KeyframeData();

keyframe.setImageData(FileUtils.*readFileToByteArray*(file));

// starttime + (keyframenumber * time difference)



// (000 + (5 * 0.1))



keyframe.setTimeCode("00:01:10:56");

keyframes.add(keyframe);

}

*catch* (FileNotFoundException e) {

*_logger*.error("File not found!", e);

}

*catch* (IOException e) {

*_logger*.error("IO error occured!", e);

}

}

 *_logger*.debug("<< getVideoKeyframes()");

*return* (KeyframeData[]) (keyframes.toArray(*new* KeyframeData[
keyframes.size()]));



Thanks a lot


-- 
www.umutdogan.com

Reply via email to