Hi Andreas,

I tried "MS Word 2007 XML", but that didn't help.  

So I'm willing to add extra hints.  Though I'm a bit confused as to how I would 
set the MIME type information.  How do I do so?  And
what should it be set to?  

Thanks.

ps: I wish to use "XinputStream"s so that I may load from memory and avoid 
going to disk.  It is a security requirement of the
end-product.  I would love to load files from URL and save myself the hassle of 
XInpuStream (and late XOutputStream).  :)


-
Albert 


-----Original Message-----
From: Andreas Schlüns [mailto:andreas.schlu...@sun.com] 
Sent: Monday, January 12, 2009 03:07
To: dev@api.openoffice.org
Subject: Re: [api-dev] XComponentLoader.ComponentFromURL throws 
IllegalArgumentException: URL seems to be an unsupported one.

Hi Albert,

The right FilterName is "MS Word 2007 XML".
And no ... you dont have to provide a XComponent.
It should work if you use "private:stream" + FilterName + XInputStream.

On the other side your example code showed me you have a valid URL ... 
and I was wondering why you dont used it here .-)

Please note: Loading documents into OOo only by using streams (means 
URL=private:stream) wont have the same detection rate then using real 
and valid URL's ! As I've already mentioned ... some formats are 
ambigous. Providing a stream only wont solve that ambigous state. You 
have to provide MORE informations as e.g. 
MimeType/Extension/FilterName/TypeName/TargetApplicationName to make 
sure things will happen right.

Regards
Andreas

> Hi Steffen,
> 
> Okay, that's worth a try... <a few minutes later>.  Ya, it didn't work.  
> Perhaps I'm using the wrong filter name.  I've used the
> following filter names to no success.
> 
> "Microsoft Word 2007 XML"
> "writer_MS_Word_2007"
> "MOOX"
> 
> Did I use the proper one?
> 
> 
> 
> -
> Albert 
> 
> 
> -----Original Message-----
> From: steffen.gr...@sun.com [mailto:steffen.gr...@sun.com] 
> Sent: Friday, January 09, 2009 02:50
> To: dev@api.openoffice.org
> Subject: Re: [api-dev] XComponentLoader.ComponentFromURL throws 
> IllegalArgumentException: URL seems to be an unsupported one.
> 
> Hi Albert,
> 
> your code works fine for me. Of course, I used only a simple odt 
> document. Perhaps the filter for loading the docx document cannot be 
> determined. You can add this to the properties for loadComponentFromUrl, 
> the name of the property is FilterName, the value the name of the filter 
> you'd like to use.
> 
> Regards, Steffen
> 
> 
> Albert Law wrote:
>> Hi, 
>>
>> Me, again.  :)
>>
>> I'm having problems with XComponentLoader.ComponentFromURL where it is 
>> loading from an XinputStream.  I'm a bit paranoid and
don't
>> want this to be a reoccurance of bug 75191 ( 
>> http://www.openoffice.org/issues/show_bug.cgi?id=75191 ).  Can anyone see 
>> what I
> could
>> have possibly done wrong in the following code?  Thanks!
>>
>> ps: The ultimate goal is to load from a byte[].  This seemed to be a good 
>> first step.
>>
>> pps: Nothing is null and the file does exist.  In fact, I have successfully 
>> loaded from a URL via "XComponent xComponent =
>> xComponentLoader.loadComponentFromURL("file:///c:/test.docx", "_blank", 0, 
>> loadProps);" where "loadProps" is empty.
>>
>> ppps: I'm using the most recent version of everything.
>>
>>
>> [begin]
>> XComponentContext xContext = Bootstrap.bootstrap();
>> XMultiComponentFactory xServiceManager = xContext.getServiceManager();
>> Object desktop = 
>> xServiceManager.createInstanceWithContext("com.sun.star.frame.Desktop", 
>> xContext);
>> XComponentLoader xComponentLoader = 
>> (XComponentLoader)UnoRuntime.queryInterface(XComponentLoader.class, desktop);
>> XSimpleFileAccess xSimpleFileAccess = 
>> (XSimpleFileAccess)UnoRuntime.queryInterface(XSimpleFileAccess.class,
>> xServiceManager.createInstanceWithContext("com.sun.star.ucb.SimpleFileAccess",
>>  xContext));
>> XInputStream xInputStream = 
>> xSimpleFileAccess.openFileRead("file:///c:/test.docx");
>> PropertyValue[] loadProps = new PropertyValue[1];
>> loadProps[0] = new PropertyValue();
>> loadProps[0].Name = "InputStream";
>> loadProps[0].Value = xInputStream;
>> XComponent xComponent = 
>> xComponentLoader.loadComponentFromURL("private:stream", "_blank", 0, 
>> loadProps);
>> [end]
>>
>>
>> leads to (line numbers are off, of course):
>> com.sun.star.lang.IllegalArgumentException: URL seems to be an unsupported 
>> one.
>>         at 
>> com.sun.star.lib.uno.environments.remote.Job.remoteUnoRequestRaisedException(Job.java:182)
>>         at com.sun.star.lib.uno.environments.remote.Job.execute(Job.java:148)
>>         at 
>> com.sun.star.lib.uno.environments.remote.JobQueue.enter(JobQueue.java:344)
>>         at 
>> com.sun.star.lib.uno.environments.remote.JobQueue.enter(JobQueue.java:313)
>>         at 
>> com.sun.star.lib.uno.environments.remote.JavaThreadPool.enter(JavaThreadPool.java:101)
>>         at 
>> com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge.sendRequest(java_remote_bridge.java:652)
>>         at 
>> com.sun.star.lib.uno.bridges.java_remote.ProxyFactory$Handler.request(ProxyFactory.java:154)
>>         at 
>> com.sun.star.lib.uno.bridges.java_remote.ProxyFactory$Handler.invoke(ProxyFactory.java:136)
>>         at $Proxy3.loadComponentFromURL(Unknown Source)
>>         at com.snowbound.testOOUno.main(testOOUno.java:223)
>>         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>         at 
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>>         at 
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>>         at java.lang.reflect.Method.invoke(Method.java:597)
>>         at com.sun.star.lib.loader.Loader.main(Loader.java:144)
>>
>>
>>
>>
>>
>> -
>> Albert 
>>
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: dev-unsubscr...@api.openoffice.org
>> For additional commands, e-mail: dev-h...@api.openoffice.org
>>
>>
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@api.openoffice.org
> For additional commands, e-mail: dev-h...@api.openoffice.org
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscr...@api.openoffice.org
> For additional commands, e-mail: dev-h...@api.openoffice.org
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@api.openoffice.org
For additional commands, e-mail: dev-h...@api.openoffice.org


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@api.openoffice.org
For additional commands, e-mail: dev-h...@api.openoffice.org

Reply via email to