Issue 119927 - Aoo 3.4.0 clis dll are not backward compatible with ooo 3.3.0, 3.2.1 and lower
Summary: Aoo 3.4.0 clis dll are not backward compatible with ooo 3.3.0, 3.2.1 and lower
Status: CONFIRMED
Alias: None
Product: App Dev
Classification: Unclassified
Component: scripting (show other issues)
Version: 3.3.0 or older (OOo)
Hardware: PC All
: P3 Major
Target Milestone: ---
Assignee: AOO issues mailing list
QA Contact:
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-06-08 09:59 UTC by Arnaud D
Modified: 2013-02-24 21:00 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Latest Confirmation in: ---
Developer Difficulty: ---


Attachments
AOO SDK example to test (2.69 KB, application/zip)
2012-06-08 14:19 UTC, Ariel Constenla-Haile
no flags Details

Note You need to log in before you can comment on or make changes to this issue.
Description Arnaud D 2012-06-08 09:59:40 UTC
As I explained here 

https://issues.apache.org/ooo/show_bug.cgi?id=117010#c32

clis of 3.2.1 are working with openoffice 3.2.1, 3.3.0, 3.4.0
But
clis of 3.4.0 are only working with openoffice 3.4.0 and they fail with lower versions with a simple OpenFile and Hidden parameter set to true

As I haven't received any reply, will you work the backward compatibility or will you encourage me to keep using dll of 3.2.1 ?

OpenFile():
Private Shared Sub OpenFileInternal(ByVal file As String, Optional ByVal hide As Boolean = False)
    Dim localContext As XComponentContext = Bootstrap.bootstrap()
    Dim multiServiceFactory As XMultiServiceFactory = localContext.getServiceManager()
    Dim componentLoader As XComponentLoader = CType(multiServiceFactory.createInstance("com.sun.star.frame.Desktop"), XComponentLoader)
    Dim xComp As XComponent = componentLoader.loadComponentFromURL(PathConverter(file),
        "_blank",
        0,
        New PropertyValue() {New PropertyValue("Hidden", -1, New Any(hide), PropertyState.DIRECT_VALUE)})
End Sub
Comment 1 Ariel Constenla-Haile 2012-06-08 14:19:37 UTC
Created attachment 78208 [details]
AOO SDK example to test

Unzip the folder inside the SDK example folder examples\CLI\VB.NET
for example:

C:\Progpram Files\OpenOffice.org 3\Basis\sdk\examples\CLI\VB.NET

Set the SDK enviroment, and build the example by running make inside the folder.
Comment 2 Ariel Constenla-Haile 2012-06-08 14:26:38 UTC
(In reply to comment #0)
> As I explained here 
> 
> https://issues.apache.org/ooo/show_bug.cgi?id=117010#c32
> 
> clis of 3.2.1 are working with openoffice 3.2.1, 3.3.0, 3.4.0
> But
> clis of 3.4.0 are only working with openoffice 3.4.0 and they fail with
> lower versions with a simple OpenFile and Hidden parameter set to true
> 
> As I haven't received any reply, will you work the backward compatibility or
> will you encourage me to keep using dll of 3.2.1 ?

Let me see if I get the issue here:

- Build the example attached in this bug in a computer with AOO 3.4.0 SDK installed
- Run this compiled executable in a computer with AOO 3.4.0, it works
- Run this compiled executable in a computer with only OOo 3.3 installed, it does not work
- Run this compiled executable in a computer with only OOo 3.2 installed, it does not work

Is this the procedure to reproduce the issue?
Do you get any error output indicating why it does not "work"?
Comment 3 Arnaud D 2012-06-11 10:22:10 UTC
It returns an exception similiar to invalid ca
Comment 4 Arnaud D 2012-06-11 10:23:25 UTC
It returns an exception similiar to invalid cast type parameter

Here is the output, error is generated from the Xcomp line 


[map_to_uno():[]com.sun.star.beans.PropertyValue] conversion failed

 [map_to_uno():unoidl.com.sun.star.beans.PropertyValue.Value [map_to_uno():any] could not convert type!



    Private Shared Sub OpenFileInternal(ByVal file As String, Optional ByVal hide As Boolean = False)
        Try
            Dim localContext As XComponentContext = Bootstrap.bootstrap()
            Dim multiServiceFactory As XMultiServiceFactory = localContext.getServiceManager()
            Dim componentLoader As XComponentLoader = CType(multiServiceFactory.createInstance("com.sun.star.frame.Desktop"), XComponentLoader)
            Dim xComp As XComponent = componentLoader.loadComponentFromURL(PathConverter(file), "_blank", 0, New PropertyValue() {New PropertyValue("Hidden", -1, New Any(hide), PropertyState.DIRECT_VALUE)})
        Catch
            Throw
        Finally
        End Try
Comment 5 Arnaud D 2012-06-15 17:56:25 UTC
Ariel I feel you are not really interested to hook in this issue or I smell it requires a lot of work to do this, anyway, just want you to know I understand you do not wish to manage the previous OOo releases, at least, if you can maintain a compatibility for futur clis with the first AOO 3.4.0 release, this will be awesome
Comment 6 Ariel Constenla-Haile 2012-06-16 00:38:18 UTC
(In reply to comment #5)
> Ariel I feel you are not really interested to hook in this issue 

Please note that I didn't assign this issue to myself, it is assigned to the AOO issues mailing lists: every new bug and every comment is read by all the people subscribed to this list, including developers.

And it's not that I'm not interested in seeing this solved, it's simply that I'm a Community contributor, contributing in my spare time (the @apache.org means just that I'm a committer, nothing else; but I'm not being payed to work here, I do it just for fun :) ).

> or I smell it requires a lot of work to do this, anyway, 

I guess it requires a lot of work even trying to verify the bug; you should have noticed this, as you did a tremendous job setting up several Virtual machines to test the bug - thanks for effort, by the way. Also notice that my only contact with Windows is through a VM with WinXP: I develop on Linux, this means another developer working on Windows may be able to work on this better than I could.

> just want you to know I
> understand you do not wish to manage the previous OOo releases, at least, if
> you can maintain a compatibility for futur clis with the first AOO 3.4.0
> release, this will be awesome

I agree with you that it is an important issue if the CLI-URE is not compatible with previous 3.* versions: the URE should change in an incompatible way only between mayor releases, that is from OOo 2 to OOo 3, and from OOo 3 to AOO 4.

It may be productive to call the developer's attention by sending a mail to the   development mailing list (ooo-dev@incubator.apache.org).