Re: [udk-dev] UNO URE

2010-10-27 Thread Stephan Bergmann

On 10/26/10 20:52, Nelson, Robert wrote:

I would like to download both the latest and version 2.3.0 of the UNO URE.  I 
cannot either the latest version or 2.3.0 on http://ownload.openoffice.org.  I 
can find 0.x and 1.x versions though.


As OOo is packaged up as a bundle of platform-specific packages (rpm, 
deb, etc.) since OOo 3.0, and one of them is the URE package, we no 
longer offer an independent download of URE itself.  Just download the 
complete OOo and pick the URE package from there.


-Stephan

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



[udk-dev] Re: [dev]setting URE_BOOTSTRAP

2010-09-20 Thread Stephan Bergmann

On 09/18/10 01:33, Soohong Min wrote:

I am trying to set URE_BOOTSTRAP as follows:

export 
URE_BOOTSTRA=vnd.sun.star.pathname:/home/openoffice3.2/program/fundamentalrc


Missing a P?  The OOo python start script at 
http://hg.services.openoffice.org/DEV300/file/2ebd15d9e8a6/pyuno/zipcore/python.sh#l56 
only sets URE_BOOTSTRAP if it is unset.



BTW,
After I will check my  URE_BOOTSTRAP with python scripts

print (os.environ['URE_BOOTSTRAP'])
It indicates that
vnd.sun.star.pathname:${exec_prefix}/lib/ooo-3.2/program/fundamentalrc

I don't know why this is happening.

My issue is that I got error message related to LoadComponentFromUrl
Error. So to solve this problem, I tried to set URE_BOOTSTRAP but I
cound not fix it.


There should never be a need to set URE_BOOTSTRAP manually -- a 
correctly set up OOo will take care of that itself.


-Stephan

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



Re: [udk-dev] Question for Python-UNO bridge on Mac OSX

2010-09-09 Thread Stephan Bergmann

On 09/09/10 15:50, basZero wrote:

Hi, is this mailing list still alive?


Yes.  (However, when you are not subscribed, see 
http://udk.openoffice.org/servlets/ProjectMailingListList, your mails 
need to be manually moderated, causing work and leading to potentially 
lost mails.)


-Stephan

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



Re: [udk-dev] Mirroring ,v-files and CVSROOT

2010-04-23 Thread Stephan Bergmann

On 04/22/10 19:53, Powered Milkman wrote:

I've got a question according to the CVSROOT on the CVS-Server.

Is it possible to get all the ,v-files and CVSROOT on my local PC?


The d...@tools.openoffice.org mailing list is more appropriate for this 
kind of question.


-Stephan

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



Re: [udk-dev] [Basic]Initialisation of a web service

2010-01-28 Thread Stephan Bergmann

On 01/28/10 11:31, Philippe Denis wrote:

Last question : if I want to modify the web service package. How can I do?
Actualy, I'm trying to modify the .jar that is inside of this file : 
http://udk.openoffice.org/java/examples/wsproxy/WebServiceProxy.zip

But after, It's impossible to install this package in OO.


The source can only be accessed via CVS (it has not been migrated to HG, 
unlike the still active parts of the old OOo CVS repository; also see 
http://wiki.services.openoffice.org/wiki/CVS), module udk/soap.  I 
never really looked at the code, but it looks like 
udk/soap/proxy/build.xml is an ant file to build the stuff (requiring 
that Environment variables ODK_HOME and OFFICE_PROGRAM_PATH *must* 
exist, so you would have to set at least those before trying it out; I 
can imagine that there are further problems, as the structure of an OOo 
installation set has changed significantly over the years).  If you get 
stuck anywhere, feel free to ask.


-Stephan

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



Re: [udk-dev] [Basic]Initialisation of a web service

2010-01-27 Thread Stephan Bergmann

On 01/27/10 10:20, Philippe Denis wrote:
I'm trying to use a web service with OOo Basic. However when I try to 
initialize this web service, I receive one error.


Basicly, I test with this code :
Sub Main
   proxyFac = 
createUNOService(com.sun.star.webservices.proxy.ProxyFactory)


   'Getting the UNO service
   proxyFac = 
createUNOService(com.sun.star.webservices.proxy.ProxyFactory)


   ' Initializing of the ProxyFactory by providing the WSDL:
   
proxyFac.initialize(Array(http://www.flash-db.com/services/ws/companyInfo.wsdl;)) 


End Sub

The line 'proxyFac.initialize(...)' returns an error. I'v taken a 
picture of this error : 
http://user.services.openoffice.org/fr/forum/download/file.php?id=12779mode=view 



However, with this WSDL 
(http://www.rightactionscript.com/states/webservice/StatesService.php?wsdl), 
the initialisation works.


To install the web service and the JWSDP, I followed this tutorial : 
http://udk.openoffice.org/java/examples/wsproxy/component_description.html#ToCDownload  
and I'm sure it works.


I dont't understand why It doesn't work in few case. Maybe, the error is 
provide by the WSDL File Itself.


Looks like the code at 
http://udk.openoffice.org/source/browse/udk/soap/proxy/src/com/sun/star/comp/webservice/unoproxy/WSDLDocumentHandler.java?rev=1.12view=markup 
cannot cope with certain kind of input (definitionsMap is set at l. 124 
for a startElement with qName==definitions and is used---and obviously 
still null in your case---at l. 244 for a startElement with 
sName==MESSAGE; maybe the sequence of startElements in your case is not 
as anticipated by the author of the code).  That code lies unmaintained 
for a very long time now.  I guess you are on your own debugging it...


-Stephan

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



Re: [udk-dev] [Basic]Initialisation of a web service

2010-01-27 Thread Stephan Bergmann

On 01/27/10 11:11, Philippe Denis wrote:
After some researchs, I think my code doesn't accept the WSDL 2. I 
explain : the WSDL working are from the version 1 of WSDL and the others 
that don't wrok are from the version 2.


If I understand, this problem is from the UDK projet or no?


The code is archived in the (old CVS) repository of the UDK project, 
right.  But there is nobody (to my knowledge) who maintains that code. 
(The code mainly came out of some internship project several years ago.) 
 If you want to improve it---go ahead!  :)


-Stephan

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



Re: [udk-dev] headless package closes connection - was Re: [udk-dev] (tid=3) Unexpected connection closure

2009-11-23 Thread Stephan Bergmann

On 11/19/09 21:59, Lukasz Szybalski wrote:

On Thu, Nov 19, 2009 at 1:26 AM, Kay Ramme kay.ra...@sun.com wrote:

Hi Lukasz,

could you give a brief overview over your system, the OS, the arch and the
OOo version etc.? That would help debugging this. You find the detailed OOo
version in the about dialog.


The upgraded version is :

3.1.1.1-1bpo50+1 sat sept 2009

The memory problem is again in the headless portion.


That is probably http://qa.openoffice.org/issues/show_bug.cgi?id=105191.

-Stephan

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



Re: [udk-dev] Question about weak reference list inside java bridge.

2009-11-23 Thread Stephan Bergmann

On 11/23/09 07:58, Huaidong Qiu wrote:

Hi all,

We got a problem like this, one of the L2 entry list keep growing consume
too much memory.

module jurt

package com.sun.star.lib.uno.
environments.java;

the cleanUp member function of class Registry.

// must only be called while synchronized on map:
private void cleanUp() {
for (;;) {
Level2Entry l2 = (Level2Entry) queue.poll();
if (l2 == null) {
break;
}
// It is possible that a Level2Entry e1 for the OID/type
pair
// (o,t) becomes weakly reachable, then another Level2Entry
e2
// is registered for the same pair (o,t) (a new Level2Entry
is
// created since now e1.get() == null), and only then e1 is
// enqueued.  To not erroneously remove the new e2 in that
case,
// check whether the map still contains e1:
String oid = l2.getOid();
Level1Entry l1 = getLevel1Entry(oid);
if (l1 != null  l1.get(l2.getType()) == l2) {
removeLevel2Entry(oid, l1, l2);
}
}
}

All those weak reference Level2Entry entries are invalid, the condition
(l1.get(l2.getType()) == l2) keeps cleanUp function from removing them from
the list.

I think if this
// It is possible that a Level2Entry e1 for the OID/type
pair
// (o,t) becomes weakly reachable, then another Level2Entry
e2
// is registered for the same pair (o,t) (a new Level2Entry
is
// created since now e1.get() == null), and only then e1 is
// enqueued.
happened once then there is no way the condition (l1.get(l2.getType()) ==
l2) can be true again, because get(l2.getType()) always return the first
element in the list, but queue.poll() return the newly released weak
reference which can not be the first one in the list.


I fail to see a flaw in the current algorithm.  In the simplest case, 
consider a Level1Entry L that has just one Level2Entry E (for some 
object O, OID D, type T) in its list.  Suppose o1 has become unreachable 
and cleanUp is called: l2 will be bound to E; oid will be bound to D; l1 
will be bound to L; l2.getType() returns T; l1.get(l2.getType()) returns 
E, so removeLevel2Entry will be called and will indeed remove E from L's 
list (and will actually also remove L from the map of Level1Entries).



If weak reference list cleanup mechanism is correct, could please give some
possible reasons could cause the growing problem of L2 entry list.


You mean, you observe a specific instance of Level1Entry whose list of 
Level2Entries keeps growing without bound?  That sounds strange.  First, 
all entries in the list should be for different UNO types supported by 
the respective UNO object, so that should bound the length of the list 
(no UNO object probably supports more than a few dozen different UNO 
types).  Second, the only way to have more entries in the list would be 
to have entries referencing different reachable Java objects which would 
nevertheless all have the same UNO OID.  That would sound like a bug 
somewhere.


Maybe you can add debug code to print, for each Level2Entry E in the 
list of the given problematic Level1Entry, the following:

- E.toString()
- E.getOid()
- E.getType()
- E.get()
to get an idea what that growing list looks like.

-Stephan

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



Re: [udk-dev] Question about weak reference list inside java bridge.

2009-11-23 Thread Stephan Bergmann
Yes, thanks.  I think now I get it.  The code in cleanUp mistakenly 
thinks that Level1Entry.get is backed by a map (where there can be at 
most one entry for a given key) while in fact it is backed by a list 
(acting like a multi-map, allowing multiple entries for a given key).


I will see how best to fix that tomorrow.  If you like, you can file an 
issue (otherwise, I will file one myself).


-Stephan

On 11/23/09 18:15, Huaidong Qiu wrote:

This is a bad list. I print out

Type,
oid,
o.toString()

The first one is a unreachable object's weak reference, which causes the
growth of list.(not all of them are unreachable, my mistake before)

list start +
list size: 6
Type[com.sun.star.uno.XCurrentContext]
287d368;msci[0];e64524147b554dde941e6f95d22dc0
null

Type[com.sun.star.uno.XCurrentContext]
287d368;msci[0];e64524147b554dde941e6f95d22dc0
[Proxy:329388962,287d368;msci[0];e64524147b554dde941e6f95d22dc0,Type[com.sun.star.uno.XCurrentContext]]

Type[com.sun.star.uno.XCurrentContext]
287d368;msci[0];e64524147b554dde941e6f95d22dc0
[Proxy:329388962,287d368;msci[0];e64524147b554dde941e6f95d22dc0,Type[com.sun.star.uno.XCurrentContext]]

Type[com.sun.star.uno.XCurrentContext]
287d368;msci[0];e64524147b554dde941e6f95d22dc0
[Proxy:329388962,287d368;msci[0];e64524147b554dde941e6f95d22dc0,Type[com.sun.star.uno.XCurrentContext]]

Type[com.sun.star.uno.XCurrentContext]
287d368;msci[0];e64524147b554dde941e6f95d22dc0
[Proxy:329388962,287d368;msci[0];e64524147b554dde941e6f95d22dc0,Type[com.sun.star.uno.XCurrentContext]]

Type[com.sun.star.uno.XCurrentContext]
287d368;msci[0];e64524147b554dde941e6f95d22dc0
[Proxy:329388962,287d368;msci[0];e64524147b554dde941e6f95d22dc0,Type[com.sun.star.uno.XCurrentContext]]
list end   +


On Mon, Nov 23, 2009 at 9:32 PM, Huaidong Qiu qiuhuaid...@gmail.com wrote:


Thanks Stephan,

I already print out the list's contents, the elements's oid and type are
the same,
 but the objects are unreachable.

Same oid because those weak references belong to same L1 entry, no problem
here.

Let's consider  a Level1Entry contains two Level2Entry: l2_1, l2_2.
if l2_1, l2_2 have same type, l1.get(l2.getType())  will return l2_1
because l1.get will return the first element match the type.


// must only be called while synchronized on map:
public Level2Entry get(Type type) {
for (Iterator i = list.iterator(); i.hasNext();) {
Level2Entry l2 = (Level2Entry) i.next();
   * if (l2.getType().equals(type)) {*
return l2;
}
}
return null;
}

but if when cleanUp was called, the unreachable object is l2_2, the
condition
 (l1.get(l2.getType()) == l2) in cleanUp function will not be met.

I think this is the problem we have, you can see the list will keep growing
after this.

-Huai Dong






On Mon, Nov 23, 2009 at 8:15 PM, Stephan Bergmann 
stephan.bergm...@sun.com wrote:


On 11/23/09 07:58, Huaidong Qiu wrote:


Hi all,

We got a problem like this, one of the L2 entry list keep growing consume
too much memory.

module jurt

package com.sun.star.lib.uno.
environments.java;

the cleanUp member function of class Registry.

   // must only be called while synchronized on map:
   private void cleanUp() {
   for (;;) {
   Level2Entry l2 = (Level2Entry) queue.poll();
   if (l2 == null) {
   break;
   }
   // It is possible that a Level2Entry e1 for the OID/type
pair
   // (o,t) becomes weakly reachable, then another
Level2Entry
e2
   // is registered for the same pair (o,t) (a new
Level2Entry
is
   // created since now e1.get() == null), and only then e1
is
   // enqueued.  To not erroneously remove the new e2 in that
case,
   // check whether the map still contains e1:
   String oid = l2.getOid();
   Level1Entry l1 = getLevel1Entry(oid);
   if (l1 != null  l1.get(l2.getType()) == l2) {
   removeLevel2Entry(oid, l1, l2);
   }
   }
   }

All those weak reference Level2Entry entries are invalid, the condition
(l1.get(l2.getType()) == l2) keeps cleanUp function from removing them
from
the list.

I think if this
   // It is possible that a Level2Entry e1 for the OID/type
pair
   // (o,t) becomes weakly reachable, then another
Level2Entry
e2
   // is registered for the same pair (o,t) (a new
Level2Entry
is
   // created since now e1.get() == null), and only then e1
is
   // enqueued.
happened once then there is no way the condition (l1.get(l2.getType()) ==
l2) can be true again, because get(l2.getType()) always return the first
element in the list, but queue.poll() return the newly released weak
reference which can not be the first one in the list.


I fail to see a flaw

Re: [udk-dev] headless package closes connection - was Re: [udk-dev] (tid=3) Unexpected connection closure

2009-11-13 Thread Stephan Bergmann

On 11/12/09 18:49, Lukasz Szybalski wrote:

I did not see my application fail or get disconnected in non-headless mode.
I do see it failing in headless.

[...]

Are there any differences in headless vs non-headless? Is there a
different mailing list I should be asking these questions? (headless
mailing list?)


I asked Philipp Lohmann from the VCL team (relevant list would be 
d...@gsl.openoffice.org) if he knows about any stability issues with 
headless mode, but he had nothing to offer.  If the cause for the 
unexpected connection closure is a crash of OOo, I guess you will need 
to attach a debugger to OOo so we can find out more.



 aptitude show openoffice.org-headless
Package: openoffice.org-headless
New: yes
State: installed
Automatically installed: no
Version: 1:2.4.1+dfsg-1
Priority: optional
Section: misc
Uncompressed Size: 2347k
Depends: openoffice.org-core (= 1:2.4.1+dfsg-1), libc6 (= 2.7-1),
libgcc1 (= 1:4.1.1), libstdc++6 (= 4.1.1),
 libstlport4.6ldbl
Description: Headless VCL plugin for OpenOffice.org
 OpenOffice.org is a full-featured office productivity suite that
provides a near drop-in replacement for Microsoft(R)
 Office.

maybe I should try go-oo.org?


Reportedly, go-oo used a different implementation of headless than 
vanilla OOo in the past, but probably have converged to the vanilla one 
by now.  (But the above output suggests that you still use OOo 2.4.1, 
which is really old.  Use OOo 3.1.1 or snapshots of the forthcoming OOo 
3.2 instead!)  In any event, if you are using OOo based on the go-oo 
fork, it is probably best to ask there first.


-Stephan

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



Re: [udk-dev] PyUNO : Inserting a User field

2009-10-23 Thread Stephan Bergmann

On 10/23/09 11:47, Etienne Gaudrain wrote:

After a few more attempts, its seems that:

xMasterPropSet.setPropertyValue(Content, Toto)

works perfectly fine.
So this is the use of Name as a property that is not allowed in 
setPropertyValue.


Each UNO object implementing XPropertySet has its own rules what kinds 
of property names (and corresponding values) it supports.  It might well 
be that a com.sun.star.text.FieldMaster.User does not support a Name 
property, but I do not know 
(offapi/com/sun/star/text/fieldmaster/User.idl says that it inherits 
from offapi/com/sun/star/text/TextFieldMaster.idl, which only has an 
optional Name property, so that might give a clue). 
d...@api.openoffice.org would be the right mailing list for such questions.


-Stephan

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



Re: [udk-dev] Building PUNO On OOo 3.x

2009-05-29 Thread Stephan Bergmann

On 05/28/09 16:21, Adam Tauno Williams wrote:

On Thu, 2009-05-28 at 09:25 +0200, Stephan Bergmann wrote:

On 05/27/09 15:46, Adam Tauno Williams wrote:

On Fri, 2009-05-22 at 10:13 +0200, Stephan Bergmann wrote:

On 05/20/09 20:20, Adam Tauno Williams wrote:

On one of our webservers with use PUNO (the PHP UNO module
http://www.wstech2.net/index.php?do=puno_install) to communicate with
OOo running as a service.  In that case it is openSUSE 10.3 with
OpenOffice_org-2.3.0.1.2-10.5.  The module builds an works perfectly.
Now we need to deploy on openSUSE 11.1 with OpenOffice_org-3.0.1.3-3.1.
But unforunately the module fails to build since [as I interpret it) the
UNO API has changed:
OK: tar xf puno-0.6.tar.gz

Where did you get that tar file from?  I do not know what it is.

http://sourceforge.net/project/showfiles.php?group_id=197229

I see.

OK: cd puno-0.6
OK: /usr/lib/ooo3/basis3.0/sdk/setsdkenv_unix
OK: phpize
OK: ./configure --with-puno=/usr/lib/ooo3/basis3.0/sdk
OK: make cppumaker
FAILS: make install (or just make)
/usr/lib/ooo3/basis3.0/sdk/include/cppu/unotype.hxx: In static member
function 'static const com::sun::star::uno::Type cppu::UnoType
template-parameter-1-1 ::get() [with T = int]':
/usr/lib/ooo3/basis3.0/sdk/include/cppu/unotype.hxx:293:   instantiated
from 'const com::sun::star::uno::Type cppu::getTypeFavourUnsigned(const
T*) [with T = int]'
/usr/lib/ooo3/basis3.0/sdk/include/com/sun/star/uno/Any.hxx:205:
instantiated from 'void
com::sun::star::uno::operator=(com::sun::star::uno::Any, const C)
[with C = int]'
/root/puno-0.6/funcs.cpp:232:   instantiated from here

puno-0.6/funcs.cpp:232 is
   arguments[0]=xComponentLoader;
and xComponentLoader is declared as
   Reference  XComponentLoader  xComponentLoader(
at l. 184.  However, that the complaint is about 
com::sun::star::uno::operator=(com::sun::star::uno::Any, const C) 
[with C = int] would imply that at l. 232 the compiler assumes that 
xComponentLoader is of type int, not of type 
com::sun::star::uno::Referencecom::sun::star::frame::XComponentLoader.
Something seems to go terribly wrong here.  What is the exact gcc call 
that causes the error, and is the given error output the complete output 
of that gcc call, or just the tail?  


I have published the output of the entire process:

/usr/lib/ooo3/basis3.0/sdk/setsdkenv_unix  setsdkenv_unix.out
https://www.mormail.com/snips/OGo12939740/setsdkenv_unix.out

phpize  phpize.out
https://www.mormail.com/snips/OGo12939740/phpize.out

./configure --with-puno=/usr/lib/ooo3/basis3.0/sdk  configure.out
https://www.mormail.com/snips/OGo12939740/configure.out
https://www.mormail.com/snips/OGo12939740/config.log.out (the
resulting config.log file)

make --debug=i cppumaker  make.cppumaker.out
https://www.mormail.com/snips/OGo12939740/make.cppumaker.out

make --debug=i  make.out
https://www.mormail.com/snips/OGo12939740/make.out


As I expected, there are earlier errors about missing headers, like

  In file included from /root/puno-0.6/puno.cpp:19: 
/root/puno-0.6/php_puno.h:41:53: error: 
com/sun/star/registry/XSimpleRegistry.hpp: No such file or directory


Those headers (declaring the C++ bindings for the OOo UNO types) are, 
AFAIK, not shipped with the SDK, but shall presumably be built by the 
make cppumaker step, whose output


  Prerequisite `/root/puno-0.6/modules/types.rdb' of target 
`cppumaker' does not exist.


hints at the alleged root problem:  I guess that one of the earlier 
steps shall copy a types.rdb from the OOo installation to 
puno-0.6/modules/types.rdb.  With OOo 2, there was a single types.rdb 
within the OOo installation, at opt/openoffice.org2/program/types.rdb. 
With OOo 3, this has changed, and the original types.rdb has been split 
into opt/openoffice.org/ure/misc/types.rdb and 
opt/openoffice.org/basis3.X/program/offapi.rdb (where the X is the OOo 
3.X minor version number).  (These files are considered internal 
artifacts of OOo, so no external mechanism should rely on them.  The OOo 
SDK can shield external mechanisms from those---changing---details.)


In short, it looks like PUNO would need to be adapted to work with OOo 3.

-Stephan

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



Re: [udk-dev] Building PUNO On OOo 3.x

2009-05-28 Thread Stephan Bergmann

On 05/27/09 15:46, Adam Tauno Williams wrote:

On Fri, 2009-05-22 at 10:13 +0200, Stephan Bergmann wrote:

On 05/20/09 20:20, Adam Tauno Williams wrote:

On one of our webservers with use PUNO (the PHP UNO module
http://www.wstech2.net/index.php?do=puno_install) to communicate with
OOo running as a service.  In that case it is openSUSE 10.3 with
OpenOffice_org-2.3.0.1.2-10.5.  The module builds an works perfectly.
Now we need to deploy on openSUSE 11.1 with OpenOffice_org-3.0.1.3-3.1.
But unforunately the module fails to build since [as I interpret it) the
UNO API has changed:
OK: tar xf puno-0.6.tar.gz

Where did you get that tar file from?  I do not know what it is.


http://sourceforge.net/project/showfiles.php?group_id=197229


I see.


OK: cd puno-0.6
OK: /usr/lib/ooo3/basis3.0/sdk/setsdkenv_unix
OK: phpize
OK: ./configure --with-puno=/usr/lib/ooo3/basis3.0/sdk
OK: make cppumaker
FAILS: make install (or just make)
/usr/lib/ooo3/basis3.0/sdk/include/cppu/unotype.hxx: In static member
function 'static const com::sun::star::uno::Type cppu::UnoType
template-parameter-1-1 ::get() [with T = int]':
/usr/lib/ooo3/basis3.0/sdk/include/cppu/unotype.hxx:293:   instantiated
from 'const com::sun::star::uno::Type cppu::getTypeFavourUnsigned(const
T*) [with T = int]'
/usr/lib/ooo3/basis3.0/sdk/include/com/sun/star/uno/Any.hxx:205:
instantiated from 'void
com::sun::star::uno::operator=(com::sun::star::uno::Any, const C)
[with C = int]'
/root/puno-0.6/funcs.cpp:232:   instantiated from here


puno-0.6/funcs.cpp:232 is

  arguments[0]=xComponentLoader;

and xComponentLoader is declared as

  Reference  XComponentLoader  xComponentLoader(

at l. 184.  However, that the complaint is about 
com::sun::star::uno::operator=(com::sun::star::uno::Any, const C) 
[with C = int] would imply that at l. 232 the compiler assumes that 
xComponentLoader is of type int, not of type 
com::sun::star::uno::Referencecom::sun::star::frame::XComponentLoader.


Something seems to go terribly wrong here.  What is the exact gcc call 
that causes the error, and is the given error output the complete output 
of that gcc call, or just the tail?  Also, changing the gcc call to just 
pre-process the input (instead of compiling it) might give a clue.  (I 
do not have the time to set things up to try this out myself, but if you 
make available the information, I am willing to have a look.)


-Stephan


/usr/lib/ooo3/basis3.0/sdk/include/cppu/unotype.hxx:272: error: call of
overloaded 'cppu_detail_getUnoType(int*)' is ambiguous
/usr/lib/ooo3/basis3.0/sdk/include/cppu/unotype.hxx:159: note:
candidates are: const com::sun::star::uno::Type
cppu::detail::cppu_detail_getUnoType(const sal_Int32*) near match
/usr/lib/ooo3/basis3.0/sdk/include/cppu/unotype.hxx:164: note:
const com::sun::star::uno::Type
cppu::detail::cppu_detail_getUnoType(const sal_uInt32*) near match
make: *** [puno.lo] Error 1


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



Re: [udk-dev] Building PUNO On OOo 3.x

2009-05-22 Thread Stephan Bergmann

On 05/20/09 20:20, Adam Tauno Williams wrote:

On one of our webservers with use PUNO (the PHP UNO module
http://www.wstech2.net/index.php?do=puno_install) to communicate with
OOo running as a service.  In that case it is openSUSE 10.3 with
OpenOffice_org-2.3.0.1.2-10.5.  The module builds an works perfectly.

Now we need to deploy on openSUSE 11.1 with OpenOffice_org-3.0.1.3-3.1.
But unforunately the module fails to build since [as I interpret it) the
UNO API has changed:

OK: tar xf puno-0.6.tar.gz


Where did you get that tar file from?  I do not know what it is.


OK: cd puno-0.6
OK: /usr/lib/ooo3/basis3.0/sdk/setsdkenv_unix
OK: phpize
OK: ./configure --with-puno=/usr/lib/ooo3/basis3.0/sdk
OK: make cppumaker
FAILS: make install (or just make)

/usr/lib/ooo3/basis3.0/sdk/include/cppu/unotype.hxx: In static member
function 'static const com::sun::star::uno::Type cppu::UnoType
template-parameter-1-1 ::get() [with T = int]':
/usr/lib/ooo3/basis3.0/sdk/include/cppu/unotype.hxx:293:   instantiated
from 'const com::sun::star::uno::Type cppu::getTypeFavourUnsigned(const
T*) [with T = int]'
/usr/lib/ooo3/basis3.0/sdk/include/com/sun/star/uno/Any.hxx:205:
instantiated from 'void
com::sun::star::uno::operator=(com::sun::star::uno::Any, const C)
[with C = int]'
/root/puno-0.6/funcs.cpp:232:   instantiated from here
/usr/lib/ooo3/basis3.0/sdk/include/cppu/unotype.hxx:272: error: call of
overloaded 'cppu_detail_getUnoType(int*)' is ambiguous
/usr/lib/ooo3/basis3.0/sdk/include/cppu/unotype.hxx:159: note:
candidates are: const com::sun::star::uno::Type
cppu::detail::cppu_detail_getUnoType(const sal_Int32*) near match
/usr/lib/ooo3/basis3.0/sdk/include/cppu/unotype.hxx:164: note:
const com::sun::star::uno::Type
cppu::detail::cppu_detail_getUnoType(const sal_uInt32*) near match
make: *** [puno.lo] Error 1


Looks like a compiler issue.  Which GCC version exactly are you using?

(I guess the above tar file comes not from OOo, but from Novell's  go-oo 
fork.  In that case, please ask the go-oo folks for help---or switch to 
the true OOo.)


-Stephan

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



Re: [udk-dev] URE 1.3.0 download

2009-05-11 Thread Stephan Bergmann

On 05/08/09 18:54, Jeremy Trudel wrote:

I am trying to download U.R.E. 1.3.0 from
http://download.openoffice.org/2.4.0/ure.html but all the links at the
bottom of the page are broken and I can't seem to download anything.


No idea where it has gone; Joost knows the details, I assume.

In general, since OOo 3.0.0 we have not made available any independent 
URE downloads any more.  Instead, you can extract a freestanding URE 
from a complete OOo installation set (on Linux and Solaris, where an OOo 
installation set is just a bundle of packages, it is the one package 
with ure in its name, installing to /opt/openoffice.org/ure; on Mac OS 
X and Windows, where there is one monolithic installation set for OOo, 
it is the sub-directory named ure or URE from an installed OOo, 
which you can copy to an arbitrary location).  (The correspondence 
between OOo and URE versions is listed at 
http://wiki.services.openoffice.org/wiki/UNO_%40since_Tags.)


Maybe such a more recent URE suites your needs better, anyway?

-Stephan

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



Re: [udk-dev] Re: OpenOffice and PenOffice

2009-02-02 Thread Stephan Bergmann

Stan,

Please give a precise short description what exactly you are doing, 
ideally a stripped-down test case.


(And please consider subscribing to this mailing list, see 
http://udk.openoffice.org/servlets/ProjectMailingListList, as you 
might otherwise miss relevant mails that forget to keep you on cc.)


-Stephan

On 01/30/09 21:10, Stan Miasnikov wrote:

Hi Florian, Thorsten,

After 2 days of testing we have found the cause of the issue with
OpenOffice.org and PenOffice integration. It does not depend on the version
of OpenOffice or Windows OS. It works on all 32-bit installations and does
not work on 64-bit installations. So, this is apparently a 64-bit issue.
Also, it is not something that we can fix in PenOffice, our tests
demonstrate that no matter what we do initialization of the OOo document
context fails on 64-bit systems (while works on 32-bit systems) in both 3.0
and 3.0.1 versions with the following exception:


caught BootstrapException: unexpected UNO exception caught: component
context fails to supply service com.sun.star.bridge.UnoUrlResolver of type
com.sun.star.bridge.XUnoUrlResolver


We'll be happy to assist you in fixing this issue in the future versions of
OOo. Let me know if you have any comments/suggestions.

Best Regards,

Stan


On 1/29/09 2:10 PM, Thorsten Behrens t...@openoffice.org wrote:


Mikhail Barashkov wrote:

I should comment on this that the only idea I have now is that maybe
OpenOffice 3.0.1 needs  registry .rdb file built against OpenOffice 3.0.1
SDK (the current one is built using 3.0 SDK). The problem is that I don't
see a 3.0.1 SDK update available and so I can't build an updated registry
file.


Sorry folks, this is not exactly my turf, no idea what changes went
in there for 3.0.1 - please ask this on the d...@api.openoffice.org
and/or dev@udk.openoffice.org list.

HTH,

-- Thorsten


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



Re: [udk-dev] Re: openoffice.org-core: Segmentation fault at startup

2009-01-05 Thread Stephan Bergmann
Reproducing with libstdc++.so.6 and libgcc_s.so.1 from gcc-4.4-20090102 
in unxlngi6.pro DEV300m38 OOo, the problem is that OOo at 
http://svn.services.openoffice.org/ooo/tags/DEV300_m38/bridges/source/cpp_uno/gcc3_linux_intel/share.hxx 
l. 52 assumes a layout of struct __cxa_exception as given in section 
2.2.1 of http://www.codesourcery.com/public/cxx-abi/abi-eh.html, while 
GCC 4.4 added a new member


  _Atomic_word referenceCount;

to the start of the struct at 
gcc-4.4-20090102/libstc++-v3/libsupc++/unwind-cxx.h l. 57.  OOo tries to 
get at information stored in the __cxa_exception header in the 
destructor function passed to __cxa_throw (function deleteException at 
http://svn.services.openoffice.org/ooo/tags/DEV300_m38/bridges/source/cpp_uno/gcc3_linux_intel/except.cxx 
l. 213), which now fails.


Please somebody clarify if GCC 4.4 adding a new member to struct 
__cxa_exception (and thus deviating from 
http://www.codesourcery.com/public/cxx-abi/abi-eh.html) is intended or 
is a mistake.


If it is intended, the OOo code needs to be changed (the information 
deleteException is now trying to retrieve from the __cxa_exception 
header must instead be encoded in the deleteException function itself, 
by dynamically creating instances of deleteException as is already done 
in the OOo bridges for Solaris).  If it is a mistake, the OOo code can 
stay as is and the GCC 4.4 code needs to be changed instead.


On 12/22/08 21:04, Rene Engelhard wrote:

tag 504323 - moreinfo
tag 504323 - unreproducible
retitle 504323 openoffice.org-core: Segmentation fault at startup with gcc 4.4 
libs
forwarded 504323 dev@udk.openoffice.org
thanks

[ d...@udk: as usual, please Cc all involved! ]

Hi,

Florian Goujeon wrote:
It was indeed my mistake. I'm working with GCC4.4 svn and installed it  
in /usr/local. OOo, instead of using the straight /usr/lib's  
libgcc_s.so.1, used the unstable /usr/local/lib's one. Everything went  
back to normal once I uninstalled GCC4.4 svn.


Yes, confirmed. I get the same crash when setting LD_LIBRARY_PATH to
/usr/lib/gcc-snapshot/lib.

r...@mini:~$ LD_LIBRARY_PATH=/usr/lib/gcc-snapshot/lib gdb /usr/lib/openoffice/program/soffice.bin 
GNU gdb 6.8-debian

Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type show copying
and show warranty for details.
This GDB was configured as powerpc-linux-gnu...
(gdb) run
Starting program: /usr/lib/openoffice/program/soffice.bin 
[Thread debugging using libthread_db enabled]

warning: Lowest section in /usr/lib/libicudata.so.38 is .hash at 00b4
[New Thread 0x48054c60 (LWP 30793)]
[New Thread 0x4ba294c0 (LWP 30820)]
[New Thread 0x4c2294c0 (LWP 30821)]
[New Thread 0x4ca864c0 (LWP 30823)]

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x48054c60 (LWP 30793)]
0x0bb633b0 in deleteException ()
   from /usr/lib/openoffice/program/libgcc3_uno.so
(gdb) 


Seems to be arch-indep (seen on i386 and ppc at least)


Unless this is a wrong behavior of OOo, the bug report can be safely closed.


Actually I am not sure. It night be a bug in OOo or it
might be one in gcc.

debian-gcc:

(gdb) bt
#0  0x0bb633b0 in deleteException ()
   from /usr/lib/openoffice/program/libgcc3_uno.so
#1  0x0e884a30 in ?? () from /usr/lib/gcc-snapshot/lib/libstdc++.so.6
#2  0x0e6af8f8 in _Unwind_DeleteException ()
   from /usr/lib/gcc-snapshot/lib/libgcc_s.so.1
#3  0x0e882d10 in __cxa_end_catch ()
   from /usr/lib/gcc-snapshot/lib/libstdc++.so.6
#4  0x0f739e00 in UCBOpenContentSync ()
   from /usr/lib/openoffice/program/libutl680lp.so
#5  0x0f73b4a8 in utl::UcbLockBytes::CreateLockBytes ()
   from /usr/lib/openoffice/program/libutl680lp.so
#6  0x0f746594 in lcl_CreateStream ()
   from /usr/lib/openoffice/program/libutl680lp.so
#7  0x0f74691c in utl::UcbStreamHelper::CreateStream ()
   from /usr/lib/openoffice/program/libutl680lp.so
#8  0x0ebdab38 in SfxApplication::GetDisabledSlotList_Impl ()
   from /usr/lib/openoffice/program/libsfx680lp.so
#9  0x0ecfb320 in SfxDispatcher::Construct_Impl ()
   from /usr/lib/openoffice/program/libsfx680lp.so
#10 0x0ecfb598 in SfxDispatcher ()
   from /usr/lib/openoffice/program/libsfx680lp.so
#11 0x0ebd7e54 in SfxApplication::Initialize_Impl ()
   from /usr/lib/openoffice/program/libsfx680lp.so
#12 0x0ebcf834 in SfxApplication::GetOrCreate ()
   from /usr/lib/openoffice/program/libsfx680lp.so
#13 0x0ed1a86c in SfxGlobalEvents_Impl ()
   from /usr/lib/openoffice/program/libsfx680lp.so
#14 0x0ed1aa5c in SfxGlobalEvents_Impl::impl_createInstance ()
   from /usr/lib/openoffice/program/libsfx680lp.so
#15 0x0f39991c in cppu::OSingleFactoryHelper::createInstanceEveryTime ()
   from /usr/lib/openoffice/program/libuno_cppuhelpergcc3.so.3
#16 0x0f3989fc in cppu::OSingleFactoryHelper::createInstanceWithContext ()
   from 

Re: [udk-dev] Re: Bug#505669: marked as forwarded (Causes FTBFS with GCC 4.4: gcc 4.4 not supported)

2008-11-18 Thread Stephan Bergmann

On 11/17/08 16:01, Rene Engelhard wrote:

So it seems we can remove it finally? It would really be nice for OOo
just working without manual fiddling with a new compiler, if the compiler
itself works/OOos code is buildable with it.


I guess nobody would complain if you reduced the GCC case to something 
like #elif __GNUC__ = 3.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Workarounds for pyuno problems in OOo3.0.0

2008-10-16 Thread Stephan Bergmann
@setori88:  You should not modify neither redirect.ini nor soffice.ini 
(likely, OOo will not work at all if you do so).  Rather, in the 
environment where you start OOo's python.exe, you need to set the 
environment variable URE_BOOTSTRAP, to either something like either


  file:///C:/Program%20Files/OpenOffice.org%203/program/fundamental.ini

or

  vnd.sun.star.pathname:C:\Program Files\OpenOffice.org 
3\program\fundamental.ini


(adapted to your actual OOo installation path).


@jbu:  However, when I try the scenario described by setori88 on a Win 
XP box (execute


 [C:\] C:\Program Files\OpenOffice.org 3\program\swriter.exe 
-accept=socket,host=localhost,port=2002;urp
 [C:\] set URE_BOOTSTRAP=vnd.sun.star.pathname:C:\Program 
Files\OpenOffice.org 3\program\fun
 [C:\] C:\Program Files\OpenOffice.org 3\program\python.exe 
C:\hello_world.py


where hello_world.py is as given at 
http://udk.openoffice.org/python/python-bridge.html) I get the error


 Traceback (most recent call last):
 File C:\\hello_world.py, line 11, in ?
 ctx = resolver.resolve( 
uno:socket,host=localhost,port=2002;urp;StarOffice.ComponentContext )
 __main__.com.sun.star.connection.NoConnectException: Connector : 
couldn't connect to socket (WSANOTINITIALISED, WSAStartup() has not been 
called)


instead.  Seen that before?  Any idea whether it is a fault of 
python.exe or of URE?


Also, I have to admit I lost track why the problem of python.exe not 
working on Windows due to missing URE_BOOTSTRAP exists at all.  On Unix, 
we solved the problem (at least for those OOo builds that use OOo's own 
python executable, not a system one) with an appropriate python shell 
script wrapper around a python.bin.  On Windows, such a wrapper appears 
to be missing.  Was that an oversight, or did we have any reason to do 
it that way?  Does an issue exist for this problem?


-Stephan


On 10/16/08 06:04, setori88 wrote:
[...]

I still cant get point 4 to work properly.

here is what I am doing:

- after i change office/program/redirect.ini
   [Bootstrap]
   URE_BOOTSTRAP=fundamental.ini
(it was URE_BOOTSTRAP=${ORIGIN}/fundamental.ini)

- I also change office/program/soffice.ini
  [Bootstrap]
   Logo=1
   ProgressBarColor=4,68,155
   ProgressFrameColor=58,159,232
   ProgressPosition=14,230
   ProgressSize=412,7
   URE_BOOTSTRAP=fundamental.ini 
   HideEula=1


(it was URE_BOOTSTRAP=${ORIGIN}/fundamental.ini)

- run soffice -accept=socket,host=localhost,port=2002;urp;
- the helloworld.py script is in the office/program dir.
   which is a copy and paste of
http://udk.openoffice.org/python/python-bridge.html helloworld.py example
- I call python helloworld.py (using openoffice's python) from
office/program dir

I get the error no 4's error

AttributeError: getCurrentComponent

[...]

Jörg Budischewski wrote:

[...]

4) (windows only) The python program crashes or you get an attribute error

AttributeError: getCurrentComponent  (or some other attribute)

This is because the types could not be loaded due to changes in the uno 
bootstrapping mechanism. You can work around it for now by setting the 
variable set URE_BOOTSTRAP=fundamental.ini


and running python from the
path/to/office/OpenOffice.org 3/programdirectory.

[...]

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] [EMAIL PROTECTED]: Bug#501028: python-uno: Can't get types when using Python bindings]

2008-10-08 Thread Stephan Bergmann

On 10/05/08 20:39, Rene Engelhard wrote:

[ please keep [EMAIL PROTECTED] in Cc ]

Hi,

do you have any idea on this? My python packages actually use system-python
but it worked in the 2.4.1 packages so it must have been broken by some
3 layer stuff). Some of the libs/.pys are in pythons site-packages because
python otherwise didn't find them[1].

Regards,

Rene


As I already wrote, see 
http://www.openoffice.org/issues/show_bug.cgi?id=90701 for further 
details.


-Stephan

--
Sitz der Gesellschaft: Sun Microsystems GmbH, Sonnenallee 1, D-85551 
Kirchheim-Heimstetten

Amtsgericht München: HRB 161028
Geschäftsführer: Thomas Schröder, Wolfgang Engels, Dr. Roland Bömer
Vorsitzender des Aufsichtsrates: Martin Häring

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] python-uno bindings break with OO.o 3.0 and system python

2008-10-07 Thread Stephan Bergmann

On 10/07/08 14:49, Tim Retout wrote:

[This is a follow-up to a mail by Rene Engelhard which got caught in the
[EMAIL PROTECTED] moderation queue. See http://bugs.debian.org/501028 ]

The OpenOffice.org program/python script sets URE_BOOTSTRAP which
contains the location of fundamentalrc. In turn, fundamentalrc sets the
location of the offapi.rdb file, which contains information about the
types used by the python uno bindings.

In short, when --with-system-python is used with OO.o 3.0, these
variables don't get set, so we see the types breakage described in the
Debian bug report.

One workaround is to export an appropriate URE_BOOTSTRAP variable before
running python. The alternative is to check for and set this variable in
uno.py, which will cover most use cases transparently - I'm halfway
through writing this patch.


Also see http://www.openoffice.org/issues/show_bug.cgi?id=90701.

-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] My first Calc addin: problem with exception handling

2008-08-25 Thread Stephan Bergmann

On 08/24/08 20:10, Andrea wrote:

Hi,

I've just written my first Calc addin and I managed to get my functions in Calc.

Now I have tried to throw exception (RuntimeException or 
IllegalArgumentException) but the whole
application crashes as soon as an exception is thrown.

I get

terminate called after throwing an instance of 
'com::sun::star::uno::RuntimeException'

which seems to come from g++ rather then OO.
Even an exception thrown inside a try{} catch(...){} crashes everything.

I have read that one should use the same compiler used to compile OO.
Is it (still) true? Is this my problem? What about dependent libraries?
I am using Fedora 9, gcc 4.3.0, OO openoffice.org-core-2.4.1-17.4.fc9-i386.
How do I find which compiler was used?


A GCC 4 should be fine.  For C++ exception handling to work reliably 
with GCC, the executable and all dynamic libraries need to use the same 
definitions of RTTI symbols (symbols starting with _ZTI and _ZTS) for 
exception types.  What is the output of nm -d on your library?  Did 
you build your library with the OOo SDK?


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Re: My first Calc addin: problem with exception handling

2008-08-25 Thread Stephan Bergmann

On 08/25/08 10:05, Andrea wrote:
  Can I ask an other question:


I cannot set breakpoints in my library.

(gdb) attach 3459
Attaching to program: /home/andrea/projects/openoffice/maths/libASIMaths.so, 
process 3459
0x00110416 in __do_global_dtors_aux ()
(gdb) break ASIMaths_impl.cpp:73
Breakpoint 1 at 0x110ee8: file ASIMaths_impl.cpp, line 73.
(gdb) c
Continuing.


But then it never stops.
I compile and link with -g.

Should I do anything more?


Sorry, no idea.  Maybe gdb thinks that line 73 of your file contains no 
code (like only the void f() start of a function definition).


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Error while writing a OOCalc-Addin with Java

2008-08-21 Thread Stephan Bergmann

find my answer at [EMAIL PROTECTED]

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] How can I add a interface upon a published service?

2008-07-14 Thread Stephan Bergmann

Rainman Lee wrote:

Oh, I see..:@(
I think it is a problem coming with the new-style interfaces, right?
if I wrote the service S using the old-style interface statement like this:
service S
{
interface A;
interface B;
}
then, the only thing I would have to do to introduce a new interface D could be:
service S
{
interface A;
interface B;
interface D; //simply add this statement and implement somewhere.
}

Is that right?


No.  Adding non-optional interfaces to old-style services is not 
allowed, as it would break old implementations of that service.  (Adding 
optional interface to old-style services had been allowed, although it 
is now known to be broken.)


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] How can I know which service implementation is contained in URE?

2008-05-15 Thread Stephan Bergmann

Rony G. Flatscher wrote:


Cédric Bosdonnat wrote:

Simply use the regview SDK tool on the types.rdb and services.rdb files
contained in the ure share/misc directory. Then you'll see all the API
available in the URE and the mapping the services and their
implementations.
  


Is there maybe a base module that is always available in URE (from which 
one could find all other modules and its members)?


what do you mean with base module?

-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Simple Bootstrap on OOo-3-M2 on Windows, setup ? (Re: [udk-dev] Simple Bootstrap

2008-05-13 Thread Stephan Bergmann

Rony G. Flatscher wrote:


Stephan Bergmann wrote:

Oliver Braun wrote:

Stephan Bergmann wrote:
See http://www.openoffice.org/issues/show_bug.cgi?id=88687, 
addressed all three problems with a newly introduced unoinfo program 
there.


Does the new mechanism still rely on a symbolic link named 'soffice' 
being present in some directory which is in PATH by default (which in 
turn is the reason why we install /usr/bin/soffice atm.) ?
Yes.  That part of simple bootstrap did not change, the mechanism 
still needs to find an office installation (via PATH, UNO_PATH, 
Windows registry...).


Just a question ad the Windows-installation of OOo-3.0-M2: that version 
does not (yet) incorporate the unoinfo utility, so I tried to set up the 
environment by hand, but am missing something as the binary cannot be 
found when excercising the bootstrap mechanism:


   *com.sun.star.comp.helper.BootstrapException: no office executable
   found!*

Obviously, something is wrong. The path to soffice.exe/soffice.bin is 
given, as are the full paths to jurt.jar, unoil.jar, ridl.jar and 
juh.jar in CLASSPATH:


   
PATH=e:\jdk1.6.0_02\bin;D:\WINDOWS\system32;D:\WINDOWS;D:\WINDOWS\System32\Wbem;e:\cygwin\bin;e:\rony\tools;E:\vslick\win;E:\Programme\GNU\GnuPG\pub;D:\Programme\Gemeinsame 


   Dateien\GTK\2.0\bin;D:\Programme\ooRexx;d:\Programme\Microsoft SQL
   Server\90\Tools\binn\;D:\Programme\SSH Communications Security\SSH
   Secure
   
Shell;e:\jdk1.6.0_02\jre\bin\client;e:\rony\dev\bsf\src\bin;D:\Programme\OpenOffice.org 


   3\program

   
CLASSPATH=e:\rony\dev\bsf\src;.;D:\Programme\OpenOffice.org\URE\java\jurt.jar;D:\Programme\OpenOffice.org\Basis 

   
3.0\program\classes\unoil.jar;D:\Programme\OpenOffice.org\URE\java\ridl.jar;D:\Programme\OpenOffice.org\URE\java\juh.jar;D:\Programme\OpenOffice.org\Basis 


   3.0\program\classes

Is there some jar missing? Do I need to set a special Windows registry 
key (the default OOo installation points to 2.4 in the key 
'Software\OpenOffice.org\UNO\InstallPath')?


When will there be the next developer version containing the unoinfo.exe?


It might work if you add the OOo 3 brand layer program directory 
(D:\Programme\OpenOffice.org 3\program) to the CLASSPATH.  Otherwise, 
wait until 
http://eis.services.openoffice.org/EIS2/cws.ShowCWS?Path=DEV300%2Fsb87 
is integrated.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] python vs. python.sh confusion

2008-05-09 Thread Stephan Bergmann

Jörg Budischewski wrote:

Hi,

python is the public interface, python.sh is an implemetation detail.

I actually introduced this because I didn't know how to create a python 
script with our installation procedure when there is the python as 
executable in the solver path in the build environment. (In the build 
env, it is ok to just call python executable as the appropriate 
environment gets set by the global build env scropt).


I see.  Got that fixed now on CWS sb87 (delivering python.sh as solver's 
bin/pyuno/python and referencing it as pyuno/python in scp2 does the 
trick); i.e., there is no python.sh any longer in the installed product, 
just python (and also on Windows the wrapper changed from python.bat to 
python.exe).


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] python vs. python.sh confusion

2008-05-08 Thread Stephan Bergmann
Why are there both a pyhton.sh and a python symlink to it in the program 
directory of OOo 2.x (when defined UNX  !defined SYSTEM_PYTHON)?  Are 
both part of the OOo public interface (intended to be called by 
clients), or should one or the other be considered an implementation detail?


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Simple Bootstrap

2008-05-08 Thread Stephan Bergmann

Oliver Braun wrote:

Stephan Bergmann wrote:


See http://www.openoffice.org/issues/show_bug.cgi?id=88687, 
addressed all three problems with a newly introduced unoinfo program 
there.




Does the new mechanism still rely on a symbolic link named 'soffice' 
being present in some directory which is in PATH by default (which in 
turn is the reason why we install /usr/bin/soffice atm.) ?


Yes.  That part of simple bootstrap did not change, the mechanism still 
needs to find an office installation (via PATH, UNO_PATH, Windows 
registry...).


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Simple Bootstrap

2008-05-07 Thread Stephan Bergmann

Stephan Bergmann wrote:
Unfortunately, with the advent of the Three-Layer Office 
(http://wiki.services.openoffice.org/wiki/ODF_Toolkit/Efforts/Three-Layer_OOo, 
starting DEV300m4) both the C++ and Java simple bootstrap mechanisms 
(http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/ProUNO/C%2B%2B/Transparent_Use_of_Office_UNO_Components 
and 
http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/ProUNO/Java/Transparent_Use_of_Office_UNO_Components) 
no longer work.  The problems are as follows:


1  C++ unoapploader on Unix (Linux, Solaris):  Determines the location 
of an soffice application, adds the soffice path to LD_LIBRARY_PATH (so 
that the subordinate process finds the URE libraries, which used to be 
located next to the soffice application), and then spawns the 
subordinate process.  This no longer works, as the URE libraries are now 
located somewhere else.


2  C++ unoapploader.exe on Windows:  Determines the location of an 
soffice application, adds the soffice path to PATH (so that the 
subordinate process finds the URE libraries, which used to be located 
next to the soffice application), and then spawns the subordinate 
process.  This no longer works, as the URE libraries are now located 
somewhere else.


3  Java com.sun.star.lib.loader.Loader:  Determines the location of an 
soffice application, locates classes/juh.jar relative to the soffice 
path, calls com.sun.star.comp.helper.UnoInfo.getJars there (which 
returns the list of URE jar URLs), and loads the subordinate application 
in a class loader that knows the URE jars.  This no longer works, as 
juh.jar is now located somewhere else.


Problem 3 could most silently be fixed by adding a fake classes/juh.jar 
(containing only a modified com.sun.star.comp.helper.UnoInfo.getJars 
that returns the correct list of URE jar URLs) to each brand layer.  The 
advantage is that an old Loader continues to work against a new soffice 
installation.  The disadvantage is the somewhat dirty solution (have a 
classes subdir only for the fake juh.jar, have a fake juh.jar with the 
same name as the true juh.jar in the URE).


Problem 1 could most silently be fixed by adding symbolic links for all 
the URE libraries to all brand layer program directories.  The advantage 
is that an old unoapploader continues to work against a new soffice 
installation.  The disadvantage is the somewhat dirty solution (quite a 
number of symlinks, not for general use but just for unoapploader to be 
happy).


Problem 2 cannot be silently fixed, however.  The only solution I see is 
to change the Windows unoapploader.exe as follows:  Determine the 
location of an soffice application and check whether there is an 
executable called (say) ureinfo next to it.  If yes (i.e., new soffice 
installation) call it and (if successful exit status) use its stdout 
data to extend PATH.  If no (i.e., old soffice installation) extend PATH 
with the soffice path, as before.  In either case, proceed as before 
(spawn subordinate application).  The disadvantage, of course, is that 
an old unoapploader will no longer work against a new soffice.


Given that problem 2 needs an incompatible solution, anyway, the 
question is, for each of the problems 1 and 3, whether to go with a 
compatible but somewhat dirty solution, or too go with a clean but 
incompatible solution.  (In all three cases the same sketched ureinfo 
could be called by the loaders, parameterized on stdin whether to supply 
information for C++ or for Java.)


For problem 1 my opinion is to go with the same solution as for problem 
2 (i.e., call the sketched ureinfo on all platforms from the C++ 
unoapploaders, and thus have an incompatible change in the C++ 
unoapploaders of all platforms).  For problem 3 I am somewhat undecided 
(and, out of laziness, would probably go with the fake classes/juh.jar 
wart, as it would be less work to implement).


More opinions, anybody?
-Stephan


See http://www.openoffice.org/issues/show_bug.cgi?id=88687, addressed 
all three problems with a newly introduced unoinfo program there.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] defaultBootstrap_InitialComponentContext()

2008-04-17 Thread Stephan Bergmann

Rony G. Flatscher wrote:

Hi there,

could you give a brief/short example in Java (pseudo-code or a sequence 
of the necessary API invocations would suffice) how one would get to an 
office with the suggested/planned changes in place (and if no office 
process is up, how to start one up and have it initialized) which would 
work on all platforms?


The simple bootstrap mechanism described at 
http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/ProUNO/Java/Transparent_Use_of_Office_UNO_Components 
should continue to work.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Simple Bootstrap

2008-04-17 Thread Stephan Bergmann

Rony G. Flatscher wrote:

Stephan Bergmann wrote:
Unfortunately, with the advent of the Three-Layer Office 
(http://wiki.services.openoffice.org/wiki/ODF_Toolkit/Efforts/Three-Layer_OOo, 
starting DEV300m4) both the C++ and Java simple bootstrap mechanisms 
(http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/ProUNO/C%2B%2B/Transparent_Use_of_Office_UNO_Components 
and 
http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/ProUNO/Java/Transparent_Use_of_Office_UNO_Components) 
no longer work.  The problems are as follows:



... cut ...

3  Java com.sun.star.lib.loader.Loader:  Determines the location of an 
soffice application, locates classes/juh.jar relative to the soffice 
path, calls com.sun.star.comp.helper.UnoInfo.getJars there (which 
returns the list of URE jar URLs), and loads the subordinate 
application in a class loader that knows the URE jars.  This no longer 
works, as juh.jar is now located somewhere else.


Problem 3 could most silently be fixed by adding a fake 
classes/juh.jar (containing only a modified 
com.sun.star.comp.helper.UnoInfo.getJars that returns the correct list 
of URE jar URLs) to each brand layer.  The advantage is that an old 
Loader continues to work against a new soffice installation.  The 
disadvantage is the somewhat dirty solution (have a classes subdir 
only for the fake juh.jar, have a fake juh.jar with the same name as 
the true juh.jar in the URE).

... cut ...

Just a question here:

   in order to allow for using OOo 2.x from Java, I have a setup
   routine that defines the classpath to point to
   OOoHome/program/classes/jurt.jar,
   OOoHome/program/classes/unoil.jar,
   OOoHome/program/classes/ridl.jar, and
   OOoHome/program/classes/juh.jar.

   Would that setup still work for OOo 3.x? If not, what is the
   recommended setup for classpath then?


No, that will no longer work.  OOo is now split in three trees (URE, 
Basis, Brand), and the necessary jars are spread across two of those 
trees (jurt, ridl, juh in URE; unoil in Basis).  If you are happy with a 
manual setup (for which there are no guarantees of stability, of 
course), see 
http://wiki.services.openoffice.org/wiki/ODF_Toolkit/Efforts/Three-Layer_OOo 
for details of how the lower (URE, Basis) layers can be located from the 
Brand layer (which probably most closely corresponds to what you denote 
OOoHome above).  Or, better, try to use the simple bootstrap 
mechanisms instead of a manual setup---we will try to keep those 
mechanisms as stable as possible (though, as this thread shows, there 
are situations when that stability cannot be absolute).


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Simple Bootstrap

2008-04-17 Thread Stephan Bergmann

Rony G. Flatscher wrote:



Just a question here:

   in order to allow for using OOo 2.x from Java, I have a setup
   routine that defines the classpath to point to
   OOoHome/program/classes/jurt.jar,
   OOoHome/program/classes/unoil.jar,
   OOoHome/program/classes/ridl.jar, and
   OOoHome/program/classes/juh.jar.

   Would that setup still work for OOo 3.x? If not, what is the
   recommended setup for classpath then?


No, that will no longer work.  OOo is now split in three trees (URE, 
Basis, Brand), and the necessary jars are spread across two of those 
trees (jurt, ridl, juh in URE; unoil in Basis).  If you are happy with 
a manual setup (for which there are no guarantees of stability, of 
course), see 
http://wiki.services.openoffice.org/wiki/ODF_Toolkit/Efforts/Three-Layer_OOo 
for details of how the lower (URE, Basis) layers can be located from 
the Brand layer (which probably most closely corresponds to what you 
denote OOoHome above).  Or, better, try to use the simple bootstrap 
mechanisms instead of a manual setup---we will try to keep those 
mechanisms as stable as possible (though, as this thread shows, there 
are situations when that stability cannot be absolute).
Hmm, at the moment I have a script that will create another script which 
sets up the environment according to the individual installation. It 
sets the classpath according to the current (old?) documentation for 
OOo. (In the 1.x-times sandbox.jar was among those jars that needed to 
be made available.)


Java in this use-case serves as the layer to access/remote-control OOo 
for the interpreted scripting language ooRexx (using a 
Rexx-to-Java-bridge). As a consequence for this to work Java reflection 
is employed and therefore Java needs to be able to access all the Java 
classes that are defined in the OOo jars.


Given your explanation, one solution might be to determine at setup-time 
the version of OOo that is installed and create that dispatcher script 
according to it (hence in the 3.x case having classpath point to the 
jars in URE and Basis). For this scenario to work reliably it must be 
possible then to determine the paths to the three layers on all 
platforms (probably registry entries on Windows, some other means for 
Unix-installations). Is an appropriate detection mechanism defined 
already? [Maybe even an OOo-supplied utility that would write those 
paths to stdout?]


For OOo 2, the Java code com.sun.star.comp.helper.UnoInfo.getJars in 
ooo-installation/program/classes/juh.jar does just that.  As I wrote 
in the mail originating this thread, for OOo 3 we should either fix 
things so that ooo-installation(-brand-layer)/program/classes/juh.jar 
continues to work, or introduce a new 
ooo-installation(-brand-layer)/program/ureinfo (or somesuch) that 
replaces it (and would become a part of OOo's stable interface, 
hopefully still working with OOo 4 etc.).  The latter would probably be 
easier for you to use, not having to call Java code from your script.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Description file for an extension

2008-01-30 Thread Stephan Bergmann

Bernard Marcelly wrote:

Hi,

Reading the on-line Developer's Guide 5.5.2 example of a file
description.xml
http://api.openoffice.org/docs/DevelopersGuide/Extensions/Extensions.xhtml#1_5_2_Example 


I think I found two typing errors, or at least inconsistency with the
description of the element attributes in the preceding pages:

Second line reads:
xmlns:d=http://openoffice.org/extensions/description/2006;
   should be:
xmlns:dep=http://openoffice.org/extensions/description/2006;

Seventh line reads:
OpenOffice.org-minimal-version value=2.2 d:name=OpenOffice.org 2.2/
   should be:
OpenOffice.org-minimal-version value=2.2 dep:name=OpenOffice.org 2.2/


Do you agree ? Do you want that I create an Issue ?


Yes, there is an editorial inconsistency (but not an error).  I would 
suggest you wait until the Dev Guide is only in the Wiki (hopefully 
soon?) and correct it there yourself.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Another question on Clear Separation of C and CPP andCore Componenets.

2007-12-10 Thread Stephan Bergmann

Cynthia Qu wrote:

hi,Stephan,

Happy holiday season! And thank you very much for your reply!   :-)

Stephan Bergmann wrote;
First and foremost (even though you probably will not like to hear 
that), I personally think the Clear Separation of C and Cpp and Core 
Components thing is nothing we should waste our time with.  (I know, 
Kay Ramme thinks differently, hence he put that on the todo list.)  Too 
much potential to break existing client code, with only very little 
(IMO) to gain.

Yes? I thought anything put on to do list is need to do. But I am not sure if 
it is assigned to me or not. And I am confussed about I need to keep on doing it or not. 
:(


I cannot really give you advice on this.  As I said, whether or not this 
 is a useful todo is somewhat controversial.  (Sorry, I could have 
raised my concerns earlier in this thread; if I remember correctly I did 
bring this up in discussion with Xiuzhi a while ago, though.)



3.I don't understand what has done in the fuction _defaultConstructUnion :

inline void _defaultConstructUnion(
void * pMem,
typelib_TypeDescription * pTypeDescr )
SAL_THROW( () )
{
::uno_type_constructData(
(char *)pMem + ((typelib_UnionTypeDescription 
*)pTypeDescr)-nValueOffset,
((typelib_UnionTypeDescription *)pTypeDescr)-pDefaultTypeRef );
*(sal_Int64 *)pMem = ((typelib_UnionTypeDescription 
*)pTypeDescr)-nDefaultDiscriminant;
}
*** 
At some places in the UNO code, there is provision for a union (aka sum) 
data type construct, which obviously was planned for at the beginning of 
UNO, but never implemented completely nor removed completely.

I am sorry, I am not sure what you mean about aka sum. Is it also known as sum?  Why can't I 
find out sum key word in cppu module? Am I misunderstand?


Sorry, that probably confused more than it clarified:  In some circles, 
union data types are called sum data types (google for algebraic 
type systems for further details).



4.Can I just move out the code class Enterable in cppu/inc/cppu/Enterable.hxx and put it into a 
file in cppuhelper/inc/Enterable.hxx (new created in this folder), but keep the other extern 
C inline stuff without moving?
No.  At compile time, client code expects #include cppu/Enterable.hxx 
to define class cppu::Enterable.  We have a policy in place to not break 
(legal) client code, neither at compile time nor at runtime.

I am sorry. What does the client code refer to ? And as the extern C  stuffs are 
compiled with C compiler(I thought), then it should offer C APIs, why is it dependent on C++ at runtime ? How to know 
the policy you refered above, could you give me some reference or explain?  And do you know how to make 
dependency against C++ is only at compile time to use the C++ compiler, but nothing at runtime?


Client code is any code external to the URE that uses the URE.

I am not sure we have our compatibility policy written down somewhere 
explicitly, but the idea is simple:  Do not change the URE's published 
interface in any way that makes existing, legal (i.e., only relying on 
the published interface) code fail, either at compile or a runtime.


Awaiting for your earliest reply!  
May you and your family have a bright Christmas! 


Have a nice time, too.
-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Another question on Clear Separation of C and CPP and Core Componenets.

2007-12-06 Thread Stephan Bergmann

Cynthia Qu wrote:

hi, Stephan,

Thank you very much for your kindness reply! I got it ,then. :) 

I also have other questions: 
1.How to make sure I have moved out all of the C++ stuff we need to move? 


First and foremost (even though you probably will not like to hear 
that), I personally think the Clear Separation of C and Cpp and Core 
Components thing is nothing we should waste our time with.  (I know, 
Kay Ramme thinks differently, hence he put that on the todo list.)  Too 
much potential to break existing client code, with only very little 
(IMO) to gain.


2.What is the workflow of the task described here: http://wiki.services.openoffice.org/wiki/Uno/Todo/Clear_Separation_of_C_and_Cpp_and_Core_Components . Well, I mean how to get you know what I have done about the task, if I thought I have completed it ?  Shall I need to do all of the tasks described in the link page and then inform you, or inform you after each task I have done and let you check out if I have done it right,then move on? 


3.I don't understand what has done in the fuction _defaultConstructUnion :

inline void _defaultConstructUnion(
void * pMem,
typelib_TypeDescription * pTypeDescr )
SAL_THROW( () )
{
::uno_type_constructData(
(char *)pMem + ((typelib_UnionTypeDescription 
*)pTypeDescr)-nValueOffset,
((typelib_UnionTypeDescription *)pTypeDescr)-pDefaultTypeRef );
*(sal_Int64 *)pMem = ((typelib_UnionTypeDescription 
*)pTypeDescr)-nDefaultDiscriminant;
}
*** 


At some places in the UNO code, there is provision for a union (aka sum) 
data type construct, which obviously was planned for at the beginning of 
UNO, but never implemented completely nor removed completely.



4.Can I just move out the code class Enterable in cppu/inc/cppu/Enterable.hxx and put it into a 
file in cppuhelper/inc/Enterable.hxx (new created in this folder), but keep the other extern 
C inline stuff without moving?


No.  At compile time, client code expects #include cppu/Enterable.hxx 
to define class cppu::Enterable.  We have a policy in place to not break 
(legal) client code, neither at compile time nor at runtime.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] what is class Type used for?

2007-12-03 Thread Stephan Bergmann

Cynthia Qu wrote:

Hi,all,

May you have a nice holiday season! And Merry Christmas!  ^_^

Could anybody of the list tell me what the class Type  which is
defined in cppu/inc/com/sun/star/uno/Type.h is used only for C++
UNO or both of C UNO and C++ UNO ? What does it used for? I just got
know it does something between types of IDL and UNO. I am not sure if
I should move it out of cppu or not, for I thought it has something
to do with C UNO. I need your support! Thank you in advance!  :-)


It is only used for C++.  Typically, it is not included directly, but 
indirectly via com/sun/star/uno/Type.hxx (which defines the relevant 
inline functions of class com::sun::star::uno::Type).  The class 
com::sun::star::uno::Type is the representation in the C++ UNO language 
binding of the UNO type TYPE (just as for example the class 
com::sun::star::uno::Any is the representation in the C++ UNO language 
binding of the UNO type ANY, or sal_Int32 is the representation in the 
C++ UNO language binding of the UNO type LONG).


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Does URE has everything OOo has for a developer?

2007-11-27 Thread Stephan Bergmann

Alexandro Colorado wrote:

Hi people,

Does URE contains all the components from the original OOo. Is it 
possible to do file conversions the same way you will do if you had the 
complete OOo application? My guess is that yes but I am particularly 
curious on things like dispatcher but I haven't write in Java so I am 
not sure if there is even a dispatcher for Java.


No, URE contains just the UNO runtime system, none of the Office 
functionality parts of OOo.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Problem on UNO Type System.

2007-11-27 Thread Stephan Bergmann

Cynthia Qu wrote:

hi, all,
 
I have a problem on reading wiki of the UNO Type System ( 
http://udk.openoffice.org/common/man/typesystem.html ).
 
As I got the following example from wiki here:

type S: set of interface type
 type M: map from integer to member function
 function fI(t: interface type, T: S, n: integer, μ: M): 〈S, integer, M〉
  if t ∉ T   // There are some problem on showing the 
symbol here, so please see the wiki .
   for i ← 1 … kb   
[...]
 
I don't know what it is meaning of  for i ← 1 … kb , and I don't know 
what exactly meaning of the arrow points to left here ←.  Could  any 
body here give me some explain?  Thank you very much! 


The arrow means assignment, so i is taking on values from 1 to kb, 
inclusive, one after another.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Question on C++ Uno Runtime.

2007-11-27 Thread Stephan Bergmann

quch wrote:

4. Is URE that we can download from OOo , like
http://download.openoffice.org/2.3.0/ure.html , pakaged by building
OOo source? And is it provided by our UDK project?  Is this URE the
same meaning with the UNO Runtime in C UNO Runtime ?


Yes, the URE product you can download is one of the products that are 
built when you build the whole OOo source code (all the products are 
built in module instsetoo_native; most if not all of the code that is 
packaged into it is comming from modules that are part of the UDK project).


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] evolving API

2007-10-04 Thread Stephan Bergmann

Stephan Bergmann wrote:

Frank Schönheit - Sun Microsystems Germany wrote:

Thus, I would even vote for relaxing the compatibility restrictions:
Heck, please allow me to add new interfaces/properties/attributes to
existing services/interfaces while they grow. Don't let us stay with a
5-year-old design just because in a very esoteric theory, somebody could
have created another implementation of this service. OOo is evolving,
why isn't its API allowed to evolve in a *usable* way?


I know, I know.

Thinking once again about it, a cheap peace offering could be the 
introduction of an extensible keyword for interfaces and the concept 
of interface ownership:


- You must not implement objects that have an extensible interface 
unless you are the owner of that interface (that implies that you must 
not introduce service or singleton specifications that implement that 
interface, either).


- You cannot inherit other interfaces from an extensible interface.

- The owner of an extensible interface can add members to its end 
(inherited interfaces, methods, attributes).


Not completely thought through, but should probably work.  How does that 
sound?


Not thought through enough, unfortunately:  The general UNO way to 
compute function indices (see 
http://udk.openoffice.org/common/man/typesystem.html) sorts all direct 
attributes before all direct methods of an interface, and at least the 
binary-UNO--C++-UNO bridge and the URP protocol rely on this function 
index definition.


Further removing the right to add attributes at the end of extensible 
interfaces would limit the usefulness of such an extensible concept 
even more, to the point where it becomes ridiculous.  So, it seems the 
splendid days when we will have our cake and actually eat it too are 
once again not in sight.  Fuck it.  :(


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] Re: [udk-cvs] CVS update [cws_src680_os2port02]: /udk/cppuhelper/source/

2007-10-02 Thread Stephan Bergmann

Yuri Dario wrote:

Hi Stephan,


The generic gcc3.map contains wildcarded entries like
  _ZN4cppu13ClassDataBaseC1E?;


I saw them, but I don't know how to handle wildcards with os2 tools.
e.g. I cannot export a symbol using a wildcard, I need an exact match.

The build system is quite complex to follow, so I don't see how unix
platforms can handle wildcards.
If you are giving them directly to gcc, this is  a no way for me; but
you if run grep/find/awk/*, maybe I can implement the same logic, just
tell me how it is supposed to work.


Ah, I see.  The GNU linker handles wildcards by itself, so on Linux we 
pass those entries unmodified.  However, Mac OS X has the same problem, 
and uses some tooling to expand wildcards based on what the linked 
objects define.  I cc'ed [EMAIL PROTECTED], maybe someone there 
can give the relevant pointers.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] Re: [udk-cvs] CVS update [cws_src680_os2port02]: /udk/cppuhelper/source/

2007-10-01 Thread Stephan Bergmann

[EMAIL PROTECTED] wrote:

Tag: cws_src680_os2port02
User: ydario  
Date: 2007-09-29 16:25:07+

Added:
   udk/cppuhelper/source/gcc3os2.map

Modified:
   udk/cppuhelper/source/makefile.mk

Log:
 Issue number: i82034
 Submitted by: ydario 
 Reviewed by:  ydario

 Commit of changes for OS/2 CWS source code integration.

File Changes:

Directory: /udk/cppuhelper/source/
==

File [added]: gcc3os2.map
Url: 
http://udk.openoffice.org/source/browse/udk/cppuhelper/source/gcc3os2.map?rev=1.1.2.1content-type=text/vnd.viewcvs-markup
Added lines: 366

UDK_3_0_0 {
global:
GetVersionInfo;
_ZN3com3sun4star3uno19WeakReferenceHelperC1ERKNS2_9ReferenceINS2_10XInterfaceEEE;
_ZN3com3sun4star3uno19WeakReferenceHelperC1ERKS3_;

[...]

Dario,

There was recently some effort to consolidate different map files for 
GCC based platforms.  I would assume the OS/2 version would also already 
be covered by that or can be covered with only slight changes to the 
generic gcc3.map.


The generic gcc3.map contains wildcarded entries like

  _ZN4cppu13ClassDataBaseC1E?;

and

  _ZThn*_N4cppu14OWeakAggObject7acquireEv;

to cover the variations.

-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] Re: [udk-cvs] CVS update: /udk/cppu/source/uno/data.cxx

2007-09-24 Thread Stephan Bergmann

[EMAIL PROTECTED] wrote:
User: vg  
Date: 2007-09-20 14:44:23+

Modified:
   udk/cppu/source/uno/data.cxx

Log:
 INTEGRATION: CWS os2port01 (1.29.18); FILE MERGED
 2007/08/06 10:35:03 obr 1.29.18.2: RESYNC: (1.29-1.30); FILE MERGED
 2006/12/28 14:53:44 ydario 1.29.18.1: OS/2 initial import.

File Changes:

Directory: /udk/cppu/source/uno/


File [changed]: data.cxx
Url: 
http://udk.openoffice.org/source/browse/udk/cppu/source/uno/data.cxx?r1=1.30r2=1.31
Delta lines:  +5 -5
---
--- data.cxx2006-09-17 00:21:05+1.30
+++ data.cxx2007-09-20 14:44:20+1.31
@@ -356,18 +356,18 @@
 
//##
 
 
-#if OSL_DEBUG_LEVEL  0

+#if OSL_DEBUG_LEVEL  10


Was the above change (effectively removing the BinaryCompatible_Impl 
test from standard debug builds, IIUC) really intended?


-Stephan


 #include stdio.h
 
-#ifdef SAL_W32

-#  pragma pack(push, 8)
+#if defined( SAL_W32)
+#pragma pack(push, 8)
 #elif defined(SAL_OS2)
-#  pragma pack(8)
+#pragma pack(push, 4)
 #endif
 
 #if defined(INTEL) \

- (defined(__GNUC__)  (defined(LINUX) || defined(FREEBSD)) || 
defined(MACOSX) \
+ (defined(__GNUC__)  (defined(LINUX) || defined(FREEBSD) || 
defined(OS2)) || defined(MACOSX) \
 || defined(__SUNPRO_CC)  defined(SOLARIS))
 #define MAX_ALIGNMENT_4
 #endif


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] evolving API

2007-08-24 Thread Stephan Bergmann

Frank Schönheit - Sun Microsystems Germany wrote:

Hi Stephan,


http://www.openoffice.org/issues/process_bug.cgi for the records.


Please cite the URL of the page before ;)


Oops, lost in copy-n-paste...

http://www.openoffice.org/issues/show_bug.cgi?id=80946

-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] evolving API

2007-08-22 Thread Stephan Bergmann

Frank Schönheit - Sun Microsystems Germany wrote:

Thus, I would even vote for relaxing the compatibility restrictions:
Heck, please allow me to add new interfaces/properties/attributes to
existing services/interfaces while they grow. Don't let us stay with a
5-year-old design just because in a very esoteric theory, somebody could
have created another implementation of this service. OOo is evolving,
why isn't its API allowed to evolve in a *usable* way?


I know, I know.

Thinking once again about it, a cheap peace offering could be the 
introduction of an extensible keyword for interfaces and the concept 
of interface ownership:


- You must not implement objects that have an extensible interface 
unless you are the owner of that interface (that implies that you must 
not introduce service or singleton specifications that implement that 
interface, either).


- You cannot inherit other interfaces from an extensible interface.

- The owner of an extensible interface can add members to its end 
(inherited interfaces, methods, attributes).


Not completely thought through, but should probably work.  How does that 
sound?


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] evolving API

2007-08-22 Thread Stephan Bergmann

Frank Schönheit - Sun Microsystems Germany wrote:

Hi Stephan,


I know, I know.

Thinking once again about it, a cheap peace offering


uh, sorry for the rant then - it wasn't intended as declaration of war :)


No problem.  I did not really interpret it as such, either.


could be the
introduction of an extensible keyword for interfaces and the concept 
of interface ownership:


- You must not implement objects that have an extensible interface 
unless you are the owner of that interface (that implies that you must 
not introduce service or singleton specifications that implement that 
interface, either


again unless you're the owner, right?


Yes.


).

- You cannot inherit other interfaces from an extensible interface.


except other extensible interfaces?


No (see below for rationale).

- The owner of an extensible interface can add members to its end 
(inherited interfaces, methods, attributes).


Why at the end only? Do we gain something with this restriction, and do
we gain it in *all* language bindings, or would some bindings break
regardless of it?


The C++ language binding would not (without modifications I would not 
dare to think about) be able to handle anything else (incl. inheriting 
from extensible interfaces).  So this sketch of a proposal is written 
from the perspective of how can we modify existing interfaces without 
the current C++ language binding breaking down when mixing clients 
compiled against old interface versions with producers built against new 
interface versions.  (All other languages should be more flexible here, 
so that I assume no extra problems for other language bindings.)


Not completely thought through, but should probably work.  How does that 
sound?


Like a great first step towards a living API, which is fun to design,
without feeling blocked unnecessarily.


Come on, the real fun is creatively pressing new functionality into 
existing, rigid API.  :)


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] evolving API

2007-08-22 Thread Stephan Bergmann

Frank Schönheit - Sun Microsystems Germany wrote:

Hi Stephan,

- The owner of an extensible interface can add members to its end 
(inherited interfaces, methods, attributes).

Why at the end only? Do we gain something with this restriction, and do
we gain it in *all* language bindings, or would some bindings break
regardless of it?
The C++ language binding would not (without modifications I would not 
dare to think about) be able to handle anything else (incl. inheriting 
from extensible interfaces).  So this sketch of a proposal is written 
from the perspective of how can we modify existing interfaces without 
the current C++ language binding breaking down when mixing clients 
compiled against old interface versions with producers built against new 
interface versions.  (All other languages should be more flexible here, 
so that I assume no extra problems for other language bindings.)


Yes, the at the end cried C++ loudly ...

Sadly, this implies that semantic grouping of interfaces/attributes
gets lost, unless we enhance autodoc to re-introduce this no matter the
order in the IDL file.

Be it. Better than nothing ...


http://www.openoffice.org/issues/process_bug.cgi for the records.

-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] Re: [udk-cvs] CVS update [cws_src680_obo10]: /udk/idlc/inc/idlc/idlctypes.hxx

2007-08-21 Thread Stephan Bergmann

[EMAIL PROTECTED] wrote:

Tag: cws_src680_obo10
User: obo 
Date: 2007-08-21 06:58:59+

Modified:
   udk/idlc/inc/idlc/idlctypes.hxx

Log:
 #i75046# windows 64bit remove dependency to stlport


Hi Oliver,

Please apply the attached simplifying patch to idlc before doing your 
64bit-sans-stlport changes in idlc/inc/idlc/idlctypes.hxx and 
idlc/inc/idlc/options.hxx.  That way, there is one less string hash 
functor definition to #ifdef.


Thanks,
-Stephan
Index: inc/idlc/idlctypes.hxx
===
RCS file: /cvs/udk/idlc/inc/idlc/idlctypes.hxx,v
retrieving revision 1.6
diff -u -p -r1.6 idlctypes.hxx
--- inc/idlc/idlctypes.hxx	7 Sep 2005 18:04:36 -	1.6
+++ inc/idlc/idlctypes.hxx	21 Aug 2007 07:31:37 -
@@ -42,6 +42,9 @@
 #include vector
 #include set
 
+#ifndef _RTL_STRING_HXX_
+#include rtl/string.hxx
+#endif
 #ifndef _SAL_TYPES_H_
 #include sal/types.h
 #endif
@@ -49,33 +52,9 @@
 #include rtl/ustring.hxx
 #endif
 
-struct EqualString
-{
-	sal_Bool operator()(const ::rtl::OString str1, const ::rtl::OString str2) const
-	{
-		return (str1 == str2);
-	}
-};
-
-struct HashString
-{
-	sal_Int32 operator()(const ::rtl::OString str) const
-	{
-return str.hashCode();
-	}
-};
-
-struct LessString
-{
-	sal_Bool operator()(const ::rtl::OString str1, const ::rtl::OString str2) const
-	{
-		return (str1  str2);
-	}
-};
-
 typedef ::std::list ::rtl::OString  StringList;
 typedef ::std::vector ::rtl::OString  			StringVector;
-typedef ::std::set ::rtl::OString, LessString  	StringSet;
+typedef ::std::set ::rtl::OString  	StringSet;
 
 class AstExpression;
 typedef ::std::list AstExpression*   	ExprList;
@@ -85,7 +64,7 @@ typedef ::std::list AstUnionLabel*   	
 
 class AstDeclaration;
 
-typedef ::std::hash_map ::rtl::OString, AstDeclaration*, HashString, EqualString  DeclMap;
+typedef ::std::hash_map ::rtl::OString, AstDeclaration*, ::rtl::OStringHash  DeclMap;
 typedef ::std::list AstDeclaration*  DeclList;
 
 class AstScope;
Index: inc/idlc/options.hxx
===
RCS file: /cvs/udk/idlc/inc/idlc/options.hxx,v
retrieving revision 1.3
diff -u -p -r1.3 options.hxx
--- inc/idlc/options.hxx	7 Sep 2005 18:05:11 -	1.3
+++ inc/idlc/options.hxx	21 Aug 2007 07:31:37 -
@@ -42,8 +42,7 @@
 
 typedef	::std::hash_map ::rtl::OString, 
 		 ::rtl::OString,
-		 HashString,
-		 EqualString  OptionMap;
+		 ::rtl::OStringHash  OptionMap;
 
 class IllegalArgument
 {

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Re: [udk-dev] swf filter - where to get?

2007-08-06 Thread Stephan Bergmann

Claudio Alberto Andreoni wrote:

Hello everybody,

sorry for being there again asking for help.
does anybody know how to compose the chain for generating
a swf from a XComponent, which is produced out of a XDrawPage?

I had a look at the com.sun.star.drawing.GraphicExportFilter, but
that service does not support any useful MIME for that purpose.
I also considered com.sun.star.Impress.FlashExportDialog but,
apart from looking a lot like a graphical widget it seems not to be
able to perform such a job.

SWFFliter and SWFExporter, which are the main classes involved
in the process, should be part of some XMultiServiceFactory-retrievable
service, shouldn't they?


[EMAIL PROTECTED] is probably a better place for a question like 
this about using the OOo UNO API.  I would suggest you retry there.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Unpublished interface to published service

2007-07-23 Thread Stephan Bergmann

Kohei Yoshida wrote:

To be honest, I didn't know there was such a thing as a new style
service.  Is there any article, or web page that I can read about how to
create a new style UNO service?


http://marketing.openoffice.org/ooocon2004/presentations/friday/shinyhappyuno.pdf 
presented things like new style services to the world.  The 
Developer's Guide at 
http://api.openoffice.org/DevelopersGuide/DevelopersGuide.html 
contains further information.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] modifying UNO struct and binary compatibility

2007-07-20 Thread Stephan Bergmann

Kohei Yoshida wrote:

On Tue, 2007-07-17 at 15:38 +0200, Stephan Bergmann wrote:

Kohei Yoshida wrote:



Since the size of the TableFilterFiled as well as the data members and
their order will not change before and after the change, I would think
it's safe to make this change, but is it not safe?

I appreciate your input.
Your reasoning might be valid for C++, but remember that there are more 
language bindings for UNO.


Thanks for your input.  But I would still think that C++ is probably the
pickest of all the languages UNO has bindings for, especially when it
comes to ABI compatibility.  In other words, the other languages are
probably more relaxed about the change I was considering above.


Then another killer:  Even if it would work that new producers now 
produce enlarged struct instances and old consumers can still read them, 
it would not work that old producers produce original struct instances 
and new consumers expect to read them as enlarged ones.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] modifying UNO struct and binary compatibility

2007-07-17 Thread Stephan Bergmann

Kohei Yoshida wrote:

Hi there,

When I modify an existing struct in its idl and re-build the offapi
module, the buidl fails because of binary incompatible change.

But when I create a parent struct, and make the existing struct a
subclass of the new parent struct, and move some of the data members
from the original struct to the new parent struct, the build also fails
due to binary incompatible change.

But is that really the case?  For instance, here is the original struct
I'm attempting to modify:

struct TableFilterField
{
com::sun::star::sheet::FilterConnection Connection;
long Field;
com::sun::star::sheet::FilterOperator Operator;
boolean IsNumeric;
double NumericValue;
string StringValue;
};

by moving the first two data members into the new base struct, here is
the change I want to make:

/** New base struct */
struct TableFilterFieldBase
{
com::sun::star::sheet::FilterConnection Connection;
long Field;
};

/** Modified original struct. */
struct TableFilterField: TableFilterFieldBase
{
com::sun::star::sheet::FilterOperator Operator;
boolean IsNumeric;
double NumericValue;
string StringValue;
};

Since the size of the TableFilterFiled as well as the data members and
their order will not change before and after the change, I would think
it's safe to make this change, but is it not safe?

I appreciate your input.


Your reasoning might be valid for C++, but remember that there are more 
language bindings for UNO.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Relative Mouse Pointer Position

2007-07-04 Thread Stephan Bergmann

Neufeld Computer Services wrote:
I am working on a macro in Draw, mostly as an exercise in learning OO 
Basic (migrating my brain from VBA) with Draw, and I want to discover 
and report the current position of the mouse relative to the DrawPage.  
I have been unable to locate any way to do this.  Can someone point me 
to the right documentation?  Is this possible?


Things like this are more typically discussed at [EMAIL PROTECTED] 
 Maybe you get more answers there (in case you still need any)...


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] Re: [udk-cvs] CVS update: /udk/www/java/man/types.html

2007-06-21 Thread Stephan Bergmann

[EMAIL PROTECTED] wrote:
User: kr  
Date: 2007-06-20 15:02:17+

Modified:
   udk/www/java/man/types.html

Log:
 moved into the wiki 
(http://wiki.services.openoffice.org/wiki/Uno/Java/Specifications/Type_Mapping)


And all the carefully done formatting (incl. relevant one like 
2SUP15/SUP - 215) is lost.  :(


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Re: [udk-cvs] CVS update [cws_src680_bunoexttm]: /udk/cppu/inc/cppu/helper/purpenv/, /udk/cppu/source/helper/purpenv/, /udk/cppu/util/

2007-02-28 Thread Stephan Bergmann

Stephan Bergmann wrote:

[EMAIL PROTECTED] wrote:

File [added]: uno_purpenvhelpergcc3.map
Url: 
http://udk.openoffice.org/source/browse/udk/cppu/util/uno_purpenvhelpergcc3.map?rev=1.1.2.1content-type=text/vnd.viewcvs-markup 


Added lines: 32
---
UDK_3_0_0 {
global:
GetVersionInfo;

[...]

File [added]: uno_purpenvhelperC52.map
Url: 
http://udk.openoffice.org/source/browse/udk/cppu/util/uno_purpenvhelperC52.map?rev=1.1.2.1content-type=text/vnd.viewcvs-markup 


Added lines: 35
---
UDK_3_0_0 {
global:
GetVersionInfo;
_DYNAMIC;
_GLOBAL_OFFSET_TABLE_;
_PROCEDURE_LINKAGE_TABLE_;


1  You should not include _DYNAMIC, _GLOBAL_OFFSET_TABLE_, 
_PROCEDURE_LINKAGE_TABLE_ in the Solaris mapfile; the linker treats them 
specially, anyway.


2  Do we want that GetVersionInfo stuff?  (It appears some mapfiles 
export it, others don't.)  What was it good for again?


3  See http://udk.openoffice.org/common/man/apicppclasses.html: if 
your classes are designed properly, it should never be necessary to 
export vtable symbols (like _ZTVN4cppu6helper7purpenv4BaseE and 
__1cEcppuGhelperHpurpenvEBaseG__vtbl_).



-Stephan


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Re: [udk-cvs] CVS update [cws_src680_bunoexttm]: /udk/cppu/inc/cppu/helper/purpenv/, /udk/cppu/source/helper/purpenv/, /udk/cppu/util/

2007-02-28 Thread Stephan Bergmann

Kay Ramme - Sun Germany - Hamburg wrote:

Hi Stephan,

Stephan Bergmann wrote:

[EMAIL PROTECTED] wrote:

File [added]: uno_purpenvhelpergcc3.map
Url: 
http://udk.openoffice.org/source/browse/udk/cppu/util/uno_purpenvhelpergcc3.map?rev=1.1.2.1content-type=text/vnd.viewcvs-markup 


Added lines: 32
---
UDK_3_0_0 {
global:
GetVersionInfo;

[...]

File [added]: uno_purpenvhelperC52.map
Url: 
http://udk.openoffice.org/source/browse/udk/cppu/util/uno_purpenvhelperC52.map?rev=1.1.2.1content-type=text/vnd.viewcvs-markup 


Added lines: 35
---
UDK_3_0_0 {
global:
GetVersionInfo;
_DYNAMIC;
_GLOBAL_OFFSET_TABLE_;
_PROCEDURE_LINKAGE_TABLE_;


1  You should not include _DYNAMIC, _GLOBAL_OFFSET_TABLE_, 
_PROCEDURE_LINKAGE_TABLE_ in the Solaris mapfile; the linker treats 
them specially, anyway.
OK, I do so. We should probably remove that from the cppuhelper map 
files as well ...


Yes, pvs -s libuno_cppuhelperC52.so.3 shows that those lines in 
cppuhelper/source/cc5_solaris_psarc.map:1.15 are ignored and bogus.


2  Do we want that GetVersionInfo stuff?  (It appears some mapfiles 
export it, others don't.)  What was it good for again?
Actually I think, this is kind of useless anyway (-MH: any comments on 
this?). Can also be found in cppuhelper, but removing it would probably 
be incompatible, wouldn't it?!


Removing it from an existing mapfile would strictly speaking be 
incompatible, yes.  However, not adding it to a (new) mapfile is another 
story, of course.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] [Fwd: [udk-cvs] CVS update [cws_src680_bunoexttm]: /udk/ure/prj/]

2007-02-19 Thread Stephan Bergmann

Kay,

Why would ure depend on cli_ure?  The only build actions in module ure 
are to copy and zip some files from the ure module itself, see 
ure/source/makefile.mk:1.4; no need for cli_ure I could make out.


-Stephan

 Original Message 
Subject: [udk-cvs] CVS update [cws_src680_bunoexttm]: /udk/ure/prj/
Date: 16 Feb 2007 18:21:06 +0100
From: [EMAIL PROTECTED]
Reply-To: dev@udk.openoffice.org
Organization: StarOffice / Sun Microsystems, Inc.
To: [EMAIL PROTECTED]
Newsgroups: openoffice.udk.cvs

Tag: cws_src680_bunoexttm
User: kr
Date: 2007/02/16 09:21:02

Modified:
   udk/ure/prj/build.lst

Log:
 fixed: moved dependency from odk module to ure module

File Changes:

Directory: /udk/ure/prj/


File [changed]: build.lst
Url: 
http://udk.openoffice.org/source/browse/udk/ure/prj/build.lst?r1=1.1r2=1.1.30.1

Delta lines:  +1 -1
---
--- build.lst   26 May 2005 10:01:01 -  1.1
+++ build.lst   16 Feb 2007 17:21:00 -  1.1.30.1
@@ -1,2 +1,2 @@
-ur ure : solenv NULL
+ur ure : cli_ure solenv NULL
 ur ure\source nmake - all ur_source NULL

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] Re: [udk-cvs] CVS update [cws_src680_macosxmapfiles]: /udk/jvmaccess/util/

2007-01-12 Thread Stephan Bergmann

[EMAIL PROTECTED] wrote:

Tag: cws_src680_macosxmapfiles
User: tra 
Date: 2007/01/12 02:49:00


Modified:
   udk/jvmaccess/util/gcc3_linux_intel.map

Log:
 #i69351# remove not existing symbols from map file


This is wrong, see gcc3_linux_intel.map:1.8: #i38188# different symbols 
are required for gcj, maybe a different less fragile long-term solution 
is required here


Please revert,
-Stephan


File Changes:

Directory: /udk/jvmaccess/util/
===

File [changed]: gcc3_linux_intel.map
Url: 
http://udk.openoffice.org/source/browse/udk/jvmaccess/util/gcc3_linux_intel.map?r1=1.11r2=1.11.32.1
Delta lines:  +3 -5
---
--- gcc3_linux_intel.map7 Sep 2005 19:23:45 -   1.11
+++ gcc3_linux_intel.map12 Jan 2007 10:48:57 -  1.11.32.1
@@ -4,9 +4,9 @@
 #
 #   $RCSfile: gcc3_linux_intel.map,v $
 #
-#   $Revision: 1.11 $
+#   $Revision: 1.11.32.1 $
 #
-#   last change: $Author: rt $ $Date: 2005/09/07 19:23:45 $
+#   last change: $Author: tra $ $Date: 2007/01/12 10:48:57 $
 #
 #   The Contents of this file are made available subject to
 #   the terms of GNU Lesser General Public License Version 2.1.
@@ -60,8 +60,6 @@
 _ZN9jvmaccess14VirtualMachine11AttachGuard17CreationExceptionD1Ev; # 
jvmaccess::VirtualMachine::AttachGuard::CreationException::~CreationException()
 _ZN9jvmaccess14VirtualMachine11AttachGuard17CreationExceptionD2Ev; # 
jvmaccess::VirtualMachine::AttachGuard::CreationException::~CreationException()
 _ZN9jvmaccess14VirtualMachineC2EP7JavaVM_ibP7JNIEnv_; # 
jvmaccess::VirtualMachine::VirtualMachine(JavaVM *, int, bool, JNIEnv *)
-_ZN9jvmaccess14VirtualMachineC1EP10_Jv_JavaVMibP10_Jv_JNIEnv; # 
jvmaccess::VirtualMachine::VirtualMachine(JavaVM *, int, bool, JNIEnv *)
-_ZN9jvmaccess14VirtualMachineC2EP10_Jv_JavaVMibP10_Jv_JNIEnv; # 
jvmaccess::VirtualMachine::VirtualMachine(JavaVM *, int, bool, JNIEnv *)
 } UDK_3.1;
 
 UDK_3.3 {


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] Re: [udk-cvs] CVS update [cws_src680_macosxmapfiles]: /udk/cppuhelper/source/

2007-01-11 Thread Stephan Bergmann

[EMAIL PROTECTED] wrote:

Tag: cws_src680_macosxmapfiles
User: tra 
Date: 2007/01/11 00:45:20


Modified:
   udk/cppuhelper/source/gcc3_linux_intel.map
   udk/cppuhelper/source/makefile.mk

Log:
 #69351#support for exported symbols lists as replacement for missing map file 
support on Mac OS X

File Changes:

Directory: /udk/cppuhelper/source/
==

File [changed]: gcc3_linux_intel.map
Url: 
http://udk.openoffice.org/source/browse/udk/cppuhelper/source/gcc3_linux_intel.map?r1=1.11r2=1.11.70.1
Delta lines:  +1 -1
---
--- gcc3_linux_intel.map27 Oct 2005 17:19:16 -  1.11
+++ gcc3_linux_intel.map11 Jan 2007 08:45:18 -  1.11.70.1
@@ -118,7 +118,7 @@
 
_ZN4cppu22createComponentContextEPKNS_17ContextEntry_InitElRKN3com3sun4star3uno9ReferenceINS6_17XComponentContextEEE;
 _ZN4cppu22getImplHelperInitMutexEv;
 _ZN4cppu23WeakImplHelper_getTypesEPNS_10class_dataE;
-_ZN4cppu23bootstrapInitialContextERKN3com3sun4star3uno9ReferenceINS2_4lang22XMultiComponentFactoryEEERKNS4_INS2_8registry15XSimpleRegistryEEESE_RKN3rtl8OUStringE;
+_ZN4cppu23bootstrapInitialContextERKN3com3sun4star3uno9ReferenceINS2_4lang22XMultiComponentFactoryEEERKNS4_INS2_8registry15XSimpleRegistryEEESE_RKN3rtl8OUStringERKNSF_9BootstrapE;


Looking at this, I think the original, wrong line for 
bootstrapInitialContext was an error and should go completely: 
bootstrapInitialContext is a cppuhelper-local function and should not be 
exported (neither cc5_solaris_sparc.map nor msvc_win32_intel.map export 
it, and gcc3_linux_intel.map effectively does not export it either, due 
to the misspelling).  Tino, please fix by taking the line out completely.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] cpp uno: Enhancement for uno::Reference

2006-12-13 Thread Stephan Bergmann

Thorsten Behrens wrote:

Stephan Bergmann [EMAIL PROTECTED] writes:


That is, from my side: go ahead.


Hi Stephan, all,

well, finally got around doing just that. Issue

http://www.openoffice.org/issues/show_bug.cgi?id=72499 


contains a patch, that adds said functionality, and addresses a few
ambiguities/incomplete types across OOo.


Thorsten,

I saw your patch yesterday and only had a quick glance at it.  What I do 
not understand is whether those few ambiguities/incomplete types across 
OOo are related to the Reference change (i.e., whether the Reference 
change introduces an incompatibility that has to be taken care of at 
those various places across OOo---that would be a clear no no).


-Stephan


Any objections, or shall I proceed?

Cheers,

-- Thorsten


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] cpp uno: Enhancement for uno::Reference

2006-12-13 Thread Stephan Bergmann

Thorsten Behrens wrote:

Stephan Bergmann [EMAIL PROTECTED] writes:


I saw your patch yesterday and only had a quick glance at it.  What I
do not understand is whether those few ambiguities/incomplete types
across OOo are related to the Reference change (i.e., whether the
Reference change introduces an incompatibility that has to be taken
care of at those various places across OOo---that would be a clear no
no).


Hi Stephan,

no, this ain't an incompatibility in the sense of the word, although
without the changes, compilation would break.  Basically, removing
operator const Reference XInterface  unearthes various places,
where the source type (that of the referenced interface being
implicitely casted) is incomplete, or where the conversion to
XInterface is ambiguous (people who do multiple inheritance). The
former borders to a bug, the latter is inconvenient - although I
suspect that the underlying reason for people passing around generic
XInterfaces (and later querying for the actually needed one again) is
at least partially related to uno::Reference having _only that one_
single automatic conversion in the past.


So it *is* an incompatible change (correct code that did compile now 
fails to compile).  I could live with the consequences of this change, 
however.


-Stephan


Cheers,

-- Thorsten


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] cpp uno: Enhancement for uno::Reference

2006-12-13 Thread Stephan Bergmann

Thorsten Behrens wrote:

Stephan Bergmann [EMAIL PROTECTED] writes:


I saw your patch yesterday and only had a quick glance at it.  What I
do not understand is whether those few ambiguities/incomplete types
across OOo are related to the Reference change (i.e., whether the
Reference change introduces an incompatibility that has to be taken
care of at those various places across OOo---that would be a clear no
no).


Hi Stephan,

no, this ain't an incompatibility in the sense of the word, although
without the changes, compilation would break.  Basically, removing
operator const Reference XInterface  unearthes various places,
where the source type (that of the referenced interface being
implicitely casted) is incomplete, or where the conversion to
XInterface is ambiguous (people who do multiple inheritance). The
former borders to a bug, the latter is inconvenient - although I
suspect that the underlying reason for people passing around generic
XInterfaces (and later querying for the actually needed one again) is
at least partially related to uno::Reference having _only that one_
single automatic conversion in the past.

Cheers,

-- Thorsten


To avoid problems with places where an otherwise ambiguous upcast from 
XWhatever to XInterface (i.e., where XWhatever uses multiple 
inheritance) used to work via the removed Reference::operator, would it 
make sense to specialize the new copy constructor/operator = member 
templates for the special case Ifc=XInterface?  Just a thought.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] getString() for com.sun.star.text.XText fails to return properly with JDK 1.6.0-beta2

2006-11-13 Thread Stephan Bergmann

synfin wrote:

Hello,

I'm working on a program that simply extracts the body of text from
.odt and .doc files as a String. The snippet of code below either
prints the entire document or simply a blank line, which seems to be
dependent on the length of the document. That is, after passing a
certain length (44 pages), the program will no longer output anything
besides a blank line. Could anyone please lend me some insight? I'm
also open to other (better) ways to extract a simple string from any
document. Thank you.

Kind regards,
Josh


Josh,

For questions like this concerning the OOo API I guess you can find more 
help over at [EMAIL PROTECTED]  (One thing that comes to mind is 
that much of the OOo code internally uses a string type (C++ tools 
String) that can only handle strings of less than 64K characters.  That 
might be the reason you get an empty string for a long document.)


-Stephan


P.S. How can I enable debugging output from soffice.bin?

CODE

   XComponent openDocument = openDocument(documentProperties);

   // Query its XTextDocument interface to get the text
   scrapeDoc = (XTextDocument)UnoRuntime.queryInterface(
   XTextDocument.class, openDocument);


  XText scrapeText = scrapeDoc.getText();

   // Print body of text to stdout
   System.out.println(scrapeText.getString());

/CODE


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Problems in running openoffice.org 2.0 with xvfb-run and oood

2006-11-08 Thread Stephan Bergmann

Marco Bizzarri wrote:

Hi all.

I'm trying to run openoffice.org 2.0 on a slackware based
distribution. I'm running into a strange problem: the openoffice
daemon (oood) starts and spawns the correct number of instances, but,
soon after, the openoffice.org dies, without being restarted by oood.

I tryied to raise the logging level in oood, but it was useless..

How can I log what is going on in the starting of OOo ?

Regards
Marco


Marco,

How did you obtain your version of OOo?  The official OOo (available as 
source or installation sets from http://www.openoffice.org/) to my 
knowledge does not have an openoffice daemon (oood).  I assume it is 
part of your slackware based distribution.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] Removed dead stuff from URP

2006-11-08 Thread Stephan Bergmann
As part of CWS sb23, I removed some dead stuff from the UNO Remote 
Protocol (URP):


- The special messages acquire and getProperties.
- The properties BridgeId, SupportedVersions, 
SupportsMultipleSynchronous, TypeCacheSize, OidCacheSize, TidCacheSize, 
Version, FlushBlockSize, OnewayTimeoutMUSEC, ForceSynchronous, ClearCache.


(There should not be any situations where any of that stuff has actually 
been used, so the change is ok.)


See http://www.openoffice.org/issues/show_bug.cgi?id=35277 and 
http://udk.openoffice.org/common/man/spec/urp.html.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Re: Addon with modal dialog

2006-10-24 Thread Stephan Bergmann

Andreas Saeger wrote:

Stephan Bergmann wrote:

Andreas,

I guess dev@api.openoffice.org is a better mailing list for this 
question.  Please try and repost there.


-Stephan



Sorry, I am confused by too many new concepts and acronyms.


No problem.  Just wanted to make sure you get lots of meaningful answers 
(and I guessed chances would be higher on the other list, read by 
more/different people).


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Addon with modal dialog

2006-10-23 Thread Stephan Bergmann

Andreas,

I guess dev@api.openoffice.org is a better mailing list for this 
question.  Please try and repost there.


-Stephan

Andreas Saeger wrote:
I use the Addons.xcu provided at 
http://wiki.services.openoffice.org/wiki/UNO_component_packaging without 
 node oor:name=Images

and replaced the python-class with my own one:

import uno
import unohelper
import string
from com.sun.star.task import XJobExecutor

class Wavelet( unohelper.Base, XJobExecutor ):
cnt = 0
def __init__( self, ctx ):
Wavelet.cnt +=1
self.ctx = ctx
def __del__(self):
Wavelet.cnt -=1
def trigger( self, args ):
Dlg = 
self.ctx.ServiceManager.createInstance(com.sun.star.awt.UnoControlDialog)
M = 
self.ctx.ServiceManager.createInstance(com.sun.star.awt.UnoControlDialogModel) 



M.Title = args.__repr__() +' '+  str(Wavelet.cnt) +''
Dlg.setModel(M)
Dlg.setVisible(True)
Dlg.execute()

g_ImplementationHelper = unohelper.ImplementationHelper()
g_ImplementationHelper.addImplementation(
Wavelet,
name.vojta.openoffice.Wavelet,
(com.sun.star.task.Job,),)

It executes a most simple awt-dialog, showing a reference-counter and 
the content of the trigger's second param args in the title.
(could not imagine which args are passed. It's the param execute of 
the control's URL service:name.vojta.openoffice.Wavelet?execute)
After installation with package manager of OOo2.0.2(Linux) I can open a 
series of new writer docs, call the modal dialog from unnamed1, 
another instance from unnamed2,... After closing one dialog I can 
access the respective document-view again. Everything works as expected, 
BUT:
All instances of the dialogs are stacked. I can access the last opened 
dialog only.
Another python-addon oooblogger behaves likewise. Calc's C++ solver 
is non-modal and I guess it uses awt.TopWindow rather than 
UnoControlDialog.
I translated some working basic-code to python because I wanted an 
object orientated implementation. It includes dialog-classes for 
selection and navigation across different types of spreadsheet-cells. 
Because my dialogs start with some user-selection and perform selection 
and scolling within the current controller they should be modal in 
respect to the current controller, but they should allow parallel 
inspection of two views as well. So they should not be modal in respect 
to each other.


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] StarBasic Kill statement

2006-08-22 Thread Stephan Bergmann

Paolo Mantovani wrote:

again,sorry for the (totally unwanted) misunderstanding


No problem.  I was in a bit of a hurry yesterday so did not read your 
mails too carefully.  Anyway, I meanwhile asked Basic expert Andreas 
Bregas to have a look at these two threads and give helpful comments.


-Stephan


regards
Paolo M


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] cpp uno: Enhancement for uno::Reference

2006-08-22 Thread Stephan Bergmann

Thorsten Behrens wrote:

Stephan writes:


I vaguely remember having discussed this before with Daniel Bölzle,
but neither of us can remember whether there were any serious problems
with it.


Well, will of course try this on a full build ;-)


Whether or not the constructor should be explicit might be a
question of style, however.


Don't think so. To match behaviour of plain ptrs (for the implicit
conversion), the copy constructor needs to be non-explicit. After all,
having that taking place automatically is my whole point here. 


I do not think that the situation is that simple.  In my opinion, there 
are three possibilities, not two:


First, the current situation where you have to use the potentially 
expensive ReferenceXBase(xDerived,UNO_QUERY_THROW) or the non-obvious, 
abstraction-breaking xDerived.get() or ReferenceXBase(xDerived.get()) 
to up-cast from XDerived to XBase.


Second, the explicit option where you have to use the explicit 
ReferenceXBase(xDerived) for the up-cast.


Third, the implicit option you proposed where you can implicitly use 
xDerived for the up-cast.


That the third most closely mimics plain pointers does not automatically 
qualify it as the best solution.  Too much implicit conversion can make 
code too obscure and fragile, as we probably all have learned the hard way.


-Stephan

[...]

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] cpp uno: Enhancement for uno::Reference

2006-08-22 Thread Stephan Bergmann

Thorsten Behrens wrote:

Stephan Bergmann [EMAIL PROTECTED] writes:


Third, the implicit option you proposed where you can implicitly use
xDerived for the up-cast.

That the third most closely mimics plain pointers does not
automatically qualify it as the best solution.  Too much implicit
conversion can make code too obscure and fragile, as we probably all
have learned the hard way.


This statement is as true in general as is doesn't apply to this
case. The only thing the proposed change will facilitate is the
implicit upcast a naked ptr-to-interface has offered since ages. All
of us should be used to that behaviour, have employed it countless
times, and found it convenient (I for myself did, at least). This is
in no way comparable to e.g. the automatic conversions of ints to
strings, where semantics really get obscured.


As I wrote before, I consider this kind of a style issue in this case 
and could probably live with both solutions.  That is, from my side: go 
ahead.


-Stephan


Cheers,


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] StarBasic Kill statement

2006-08-21 Thread Stephan Bergmann

Paolo Mantovani wrote:

Hi all,

The kill statement in StarBasic can delete entire folders
Calling OptionCompatible(True) before does not affect the behavior.
( OOo 2.0.2 )

The documentation doesn't say explicitly that it shouldn't happen but anyway 
it speaks only of files, and never of folders.

Furthermore, there is a specific statement to delete directories ( RmDir )

In VBA if you try to kill a directory you get an error (file not found) so I 
think that this is a compatibility issue.


any comments?


Is this intended as a follow up to 
http://udk.openoffice.org/servlets/ReadMsg?list=devmsgNo=3564?


If yes, why do you start a new thread?  And why don't you instead answer 
my question where exactly in the OOo CVS the line If 
oUcb.Exists(FilePath) Then (that you claim should be changed) is 
located, so I can tell you which OOo project would be appropriate where 
to re-post your mail or file an issue?  (As udk most probably is not the 
appropriate project.)


-Stephan


thanks
Paolo M


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] Re: [udk-cvs] CVS update [cws_src680_qiq]: /udk/cppuhelper/source/

2006-06-30 Thread Stephan Bergmann

Frank,

please add the newly exported symbol to the correct section (see 
http://udk.openoffice.org/common/man/libraryversioning.html Adding an 
Exported Symbol).  Also note 
http://udk.openoffice.org/common/man/apicppclasses.html, (7), third 
bullet.


Thanks,
-Stephan

[from [EMAIL PROTECTED]:]

[EMAIL PROTECTED] wrote:

Tag: cws_src680_qiq
User: fs  
Date: 2006/06/30 01:01:57


Modified:
   udk/cppuhelper/source/cc5_solaris_sparc.map

Log:
 need RTTI information for OweakObject for #i51143#

File Changes:

Directory: /udk/cppuhelper/source/
==

File [changed]: cc5_solaris_sparc.map
Url: 
http://udk.openoffice.org/source/browse/udk/cppuhelper/source/cc5_solaris_sparc.map?r1=1.14r2=1.14.38.1
Delta lines:  +1 -0
---
--- cc5_solaris_sparc.map   27 Oct 2005 17:18:55 -  1.14
+++ cc5_solaris_sparc.map   30 Jun 2006 08:01:54 -  1.14.38.1
@@ -277,6 +277,7 @@
 __1cEcppuGUnoUrlNgetConnection6kM_rkn0AQUnoUrlDescriptor__;
 __1cEcppuGUnoUrlLgetProtocol6kM_rkn0AQUnoUrlDescriptor__;
 __1cEcppuGUnoUrlNgetObjectName6kM_rknDrtlIOUString__;
+__1cEcppubC__RTTI__1nEcppuLOWeakObject__;
 
 	local:

*;


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] New media types for extensions

2006-06-26 Thread Stephan Bergmann

Frank Schönheit - Sun Microsystems Germany wrote:

Hi Joachim,

this was only an example. Meanwhile I favour the idea of a new file 
extension for extensions.


which means somebody can rename a new extension, requiring license
acceptance, to an old extension, and then run it without licence
acceptance in 2.0.3. Is this desired?


See this thread at [EMAIL PROTECTED] for a discussion of why 
changing anything in manifest.xml does not help here, anyway (.zip).


-Stephan


Also, aren't extensions to weak to distinguish file content?

Ciao
Frank


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Private UNO API for Integrated components

2006-05-30 Thread Stephan Bergmann

Kohei Yoshida wrote:

On 5/30/06, Stephan Bergmann [EMAIL PROTECTED] wrote:

Kohei Yoshida wrote:
 Hi all,

 I was hoping that someone on this list could help me out on this.

 Here is what I'm trying to do.  I have a top level module called
 'scsolver' which provides an optimization solver component for Calc
 (or just 'Solver' for short).  You don't see this in the upstream
 build since this module is still ooo-build only, just in case you're
 wondering.

 In this module, I need to include a set of new, private UNO IDLs to
 glue the main Solver component with an external optimization library.
 Both the main component and the external component need to be able to
 use these UNO interfaces, which means that, somehow the source files
 in this module need to be able to find the header files (*.hpp) that
 are generated from my IDLs.  The external library, for now, will
 remain inside the scsolver module.

 So, how do I go about defining my private IDLs at module level,
 without adding them to the master list used by the entire OO.o source
 tree?  I've check the source, and the chart2 module may have done
 something similar, but I'm not entirely sure how it's done.

The by far easiest approach would be to do add your UNOIDL entities to
CVS module offapi, but to not mark them as published so that they can
change over time if there is a need (you might also want to add some
comment that those are private entities that are not intended to be
published at all, and you might want to choose some appropriately named
UNOIDL module for them).  That way, you do not need to fiddle with the
details of cppumaker, and your UNO types are readily available in every
UNO environment (Java, CLI, etc.) where you might need them in the 
future.


Thanks for your advice Stephan.  I'll follow your advice and add IDLs
to offapi.  By the way, the APIs I intend to use as a glue will be
private for now, but I want them to eventually get published once they
stabilize, so that other people can easily add new backend algorithms
with much ease.

Also, is there a way to export multiple services from a single shared
library?  I need to export two, or possibly more services, but I'd
rather keep them in a single shared library because those services
will be tightly coupled.  Or can each shared library only export one
service?


There can be any number of services in one shared library.  See 
stoc/source/uriproc/component.cxx:1.4 for an example of how I organize 
four services into one shared library (note that, over time, various 
idioms and helpers have emerged for this, so other examples may look 
rather different).


-Stephan


Thanks,
Kohei


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] A request for com.sun.star.lang.XEventListener

2006-02-20 Thread Stephan Bergmann

Rony G. Flatscher wrote:

Hi Kay,


Rony,

Thanks for the detailed explanation of why XEventListener should extend 
java.util.EventListener.  Doing so would not be difficult, I just 
hesitated to add such (at first sight arbitrary) special casing (and 
then simply forgot about your request).  Please file an issue for me, 
and I can probably add that for OOo 2.0.3.


-Stephan

according to the documentation com.sun.star.lang.XEventListener 
does not report to implement the Java interface 
java.util.EventListener. It seems that java.beans.Introspector is 
not able to identify/locate the OOo EventListeners breaking generic 
reflective code as a result.


what would be the advantage of the Introspector being able to identify 
event listeners? 


Every Java program relying on the abliity of the Introspector to 
identify event listeners will be able to rely on the OOo Java interfaces 
as well. Or put differently: every Java code  breaks with OOo Java event 
listeners, because OOo does not classify its event listeners of type .



What would the usage scenario look like? Do you have an example at hand?


Yes, I think so. An (rather important) example might be:

http://jakarta.apache.org/bsf

The Bean Scripting Framework (BSF) is a Java opensource framework 
allowing Java programs to easily invoke scripts in non-Java languages 
and also supplies functionality to non-Java scripting engines to 
interface with Java. This way non-Java programs are able to interface 
and take advantage of Java.


I have been using BSF to allow the free, opensource, multiplatform 
scripting language ooRexx (cf. http://www.ooRexx.org) to drive OOo via 
Java. (The generic support for this ooRexx-to-Java bridge is dubbed 
BSF4Rexx and will get contain the generic support for OOo, making it 
considerably easy for script coders to drive OOo in a platform 
independent manner.)
[You can take a look at the following work: 
http://wi.wu-wien.ac.at/rgf/diplomarbeiten/BakkStuff/2005/200511_OOo-Ahammer/200511_OOoAutomation.pdf 
which contains nutshell examples of driving OOo from ooRexx, showing the 
code and images of the resulting OOo window. All examples run under 
Linux *and* Windows, with the exception of the MS Access sample, of 
course. This work was updated in 2006-11. There is another student who 
is about to finalize another work, creating nutshell examples of using 
ooRexx as a macro language for OOo 2.x.]


With the advent of OOo 2.0 a Java based scripting framework is 
available, which I use to plug in ooRexx into OOo, allowing it to be 
used as a scripting language beside OOo Basic, Python, JavaScript 
(Rhino), BeanShell. (It would be now a matter of a few minutes to add 
all the BSF supported scripting languages using the ooRexx 
implementation as a template. Will announce that fact, once the ooRexx 
implementation goes Golden) Just to give you an idea about the 
complexity of this part of the task (besides getting acquainted with 
the OOo scripting framework itself), here is the necessary code to make 
ooRexx available as a macro language to OOo:


--- cut here --

ScriptSourceModel.invoke(...):

// ... cut ...

BSFManager mgr = new BSFManager();  
Vector args= new Vector(aParams.length+1);  


try // create arguments for ooRexx
{
int i;

   // rgf, make XScriptContext available to script
   // 2006-01-06, set entries into BSF registry for retrieval by invoked 
Rexx script (available in every Rexx scope)
mgr.registerBean(ScriptProviderForooRexx.OOREXX_XSCRIPTCONTEXT_KEY,  
ScriptContext.createContext(m_xModel, m_xContext, m_xMultiComponentFactory));
mgr.registerBean(ScriptProviderForooRexx.OOREXX_VERSION_KEY,1.0);

   // add arguments to Vector
for (i=0;iaParams.length;i++)
{
args.addElement(aParams[i]);// add argument
}
}

// ... cut (plain vanilla stuff from ScriptSourceModel.invoke(...) ...

result=mgr.apply(ScriptProviderForooRexx.OOREXX_BSFLANGUAGE, 
OOo.ScriptProviderForooRexx, 0, 0, source, null, args);

if (result == null)
{
return new Any(new Type(), null);
}

return result;

// ... cut ...
  


--- cut here --


Changing a few constants and you could use the same code for dispatching 
JavaScript (Rhino), Jython, JLog (PROLOG) etc. via BSF and the OOo 
scripting framework. (Just to hint at the importance of Java frameworks 
like BSF.)


---

Now, because OOo event handlers do not declare to have the Java 
java.util.EventListener implemented (it is actually just a 
classification information, as it is an interface class not defining any 
fields or methods), the generic event handler support of BSF breaks. 
(Due to the opensourceness of BSF I was able to go through the 
respective code and was able to add the support for OOo event handlers; 
but this is a private fix, which I doubt that the BSF committers will 
accept for the official distribution. If interested, you could look at 
it at the URL 

Re: [udk-dev] PyUNO: Unexpected connection closure

2005-12-07 Thread Stephan Bergmann

Andrew Z wrote:


Thanks for the core tip: I didn't think of it.  In fact, I did get a 
core with the following backtrace, so I should file a bug report in OOo?


Yes, please file an issue (you can assign it to me, sb), and please 
include the detailed description of how to reproduce it.


Thanks,
-Stephan

#0  0xb7597e20 in uno_type_isAssignableFromData () from 
/opt/openoffice.org2.0/program/libuno_cppu.so.3
#1  0xb759b9a8 in uno_type_isAssignableFromData () from 
/opt/openoffice.org2.0/program/libuno_cppu.so.3
#2  0xb75a30b7 in uno_type_any_assign () from 
/opt/openoffice.org2.0/program/libuno_cppu.so.3
#3  0xb4280f45 in component_getFactory () from 
/opt/openoffice.org2.0/program/acceptor.uno.so
#4  0xb27eb22a in component_getFactory () from 
/opt/openoffice.org2.0/program/remotebridge.uno.so
#5  0xb27d2f29 in component_canUnload () from 
/opt/openoffice.org2.0/program/liburp_uno.so
#6  0xb27d09a4 in component_canUnload () from 
/opt/openoffice.org2.0/program/liburp_uno.so
#7  0xb27c68d5 in component_canUnload () from 
/opt/openoffice.org2.0/program/liburp_uno.so
#8  0xb73f02f7 in osl_yieldThread () from 
/opt/openoffice.org2.0/program/libuno_sal.so.3

#9  0x00d65b80 in start_thread () from /lib/libpthread.so.0
#10 0x00bd69ce in clone () from /lib/libc.so.6

Andrew


Joerg Budischewski wrote:

in general, OOo indeed crashes when you get an unexpected connection 
closure, please check, if you get a core.


If OOo does not crash, it may also be possible, that the office 
terminates faster than it can put the reply for terminate on the wire. 
AFAIK the office does not wait for remote connections to be dropped 
before it terminates.


If the latter is the case, this is difficult to fix. I'd try to ignore 
the disposed exception on terminate. Another (more complicated) 
workaround can be, that you implement a component inside the office, 
which does the terminate call on the desktop delayed (by creating an 
own thread that waits form some milliseconds), but that sounds 
overkill to me.


Bye,

Jörg
Andrew Z wrote:



Hello,

I am having strange problems with PyUNO and OOo 2.0.1rc1 on Linux.  
In some situations, I get the following error on desktop terminate(): 
uno.com.sun.star.lang.DisposedException: URP_Bridge : disposed\n(tid=3)

Unexpected connection closure

Observations:
- The unexpected closure happens reliably with Xvfb and on a warm start.
- The closure does not happen with Xvfb on a cold start (first attempt).
- The closure does not happen with Xvfb on a warm start if Python 
sleeps  2 seconds before terminate().

- The closure does not happen with a real X server.
- Some documents do not cause the error (but observations above refer to
a blank Word document).

My simplified program simply opens OOo, opens a document, closes 
document, and closes OOo.  The program, scripts for running it 
through Xvfb, and a

sample document are here:
   http://narnia.dnsalias.org/ooo/uno-disconnect.zip (3.9KB)

The purpose of the full version of my program is automating testing 
of OpenOffice.org itself, and unfortunately, the unexpected closure 
is the same error PyUNO gives when OpenOffice.org crashes.


Is this unexpected closure problem the fault of OOo, PyUNO, or my 
program?  How can it be fixed?


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Java filter batch job

2005-11-16 Thread Stephan Bergmann

Martin Gallwey wrote:


Thinking about the issue a little longer, I came to the following 
conclusion:


1  I still think it is bad to have C++ objects that implement UNO 
objects and do substantial things in their destructors, and that those 
implementations should ideally be fixed.  



Maybe when Kai  Kay proceed further with their grand work on improving 
the multi-threaded behaviour of Office, they can catch some of these 
kinds of problems. The CrashFilter test case showed up at least 4 cases 
where the SolarMutex is locked in a destructor (SwXNumberingRules 
destructor, XMLRedlineImportHelper destructor, 
SfxBaseModel::removeEventListener ( Ref  XEventListener ) and 
SfxBaseModel::removeEventListener ( Ref  XDocEventListener )). It would 
be easy to improve the granularity of the mutex in the SwXNumberingRules 
destructor, but the others would require a little more work, and 
possibly are only the tip of the iceberg anyway!


2  GC within typical JVMs of today seems to be flawed in that a 
long-running finalize method can lead to OutOfMemoryError in cases 
where this could be avoidable.  We can make UNO more robust against 
this problem, without unduly sacrificing performance:  Asynchronously 
shift the execution of potentially long-running finalize methods 
(i.e., com.sun.star.bridges.jni_uno.JNI_proxy.finalize() and 
com.sun.star.lib.uno.bridges.java_remote.ProxyFactory.Handler.finalize()) 
into some extra thread (finalize is already called asynchronously, so 
delaying it a little further and moving it to yet another thread 
should cause no problems).  I experimentally added a 
com.sun.star.lib.util.AsynchronousFinalizer and modified the two 
finalize methods mentioned previously, and afterwards your testcase 
runs fine (which also shows that the claim that one additional thread 
should be enough is right).  The advantage of this solution is that it 
works for both the intra-process JNI bridge and the inter-process Java 
URP bridge.  (Also, once JVMs have matured to be more robust against 
long-running finalize methdos, we can think of removing this hack 
again.)



Sounds good. I think the reason that 1 extra finalizer thread didn't 
work for me was because I didn't make the second call above 
(com.sun.star.lib.uno.bridges.java_remote.ProxyFactory.Handler.finalize()) 
asynchronous also.


One thing that did occur to me was that we could use the 'Concurrent Low 
Pause Collector' :
http://java.sun.com/docs/hotspot/gc1.4.2/#4.4.%20The%20Concurrent%20Low%20Pause%20Collector|outline 



or the 'Throughput Collector'
http://java.sun.com/docs/hotspot/gc1.4.2/#4.2.%20The%20Throughput%20Collector|outline 



However, both seem to only really work on multi-processor machines, with 
both still using a single thread to do the 'major' collections. Neither 
collector seems to change substantially between 1.4.2 and 1.5 either.



If there are no objections, I will happily add this to CWS mtg1.



Yes, please do. I will test it with the non-reduced test case.


Done:
bridges/source/jni_uno/java/com/sun/star/bridges/jni_uno/JNI_proxy.java 
1.7.14.1

jurt/com/sun/star/lib/uno/bridges/java_remote/ProxyFactory.java 1.6.4.1
jurt/com/sun/star/lib/util/makefile.mk 1.9.8.1
jurt/com/sun/star/lib/util/AsynchronousFinalizer.java 1.1.2.1

-Stephan


Thanks,

Martin


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Java filter batch job

2005-11-14 Thread Stephan Bergmann

Joerg Budischewski wrote:
[...]
The java uno bridge need to create also a fresh thread for each release 
(or at least for each concurrent release). It can't be a single thread 
doing the releases, because this would end in the same problem.


A single additonal thread is enough to avoid the deadlock (thread A 
needs more memory, and thus the finalizer thread, but the finalizer 
thread waits for a mutex locked by thread A).


On top of that, since the amount of memory available to a JVM is finite, 
it is important to keep the number of reachable objects within a JVM 
small at every point in time.  Whether adding a single thread or 
multiple threads in the given case helps achieve this goal better is not 
a matter of correctness, but a matter of fine tuning.


IMO, the simplest approach should be tried first.  Only if it is known 
to behave badly (i.e., lead to OutOfMemoryError) often enough a more 
complex approach should be tried.


The simplest approach (call release synchronously from the finalizer 
thread) is known to deadlock.  It is arguable whether that deadlock is 
due to an error in the bridge, or due to an error in the involved UNO 
object implementations.  However, if we agree on the former, the next 
approach in terms of simplicity would be to have exactly one extra thread.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Java filter batch job

2005-11-14 Thread Stephan Bergmann

Kay Ramme - Sun Germany - Hamburg wrote:

Stephan Bergmann wrote:


Joerg Budischewski wrote:
[...]

The java uno bridge need to create also a fresh thread for each 
release (or at least for each concurrent release). It can't be a 
single thread doing the releases, because this would end in the same 
problem.




A single additonal thread is enough to avoid the deadlock (thread A 
needs more memory, and thus the finalizer thread, but the finalizer 
thread waits for a mutex locked by thread A).


That's what I said :-).



On top of that, since the amount of memory available to a JVM is 
finite, it is important to keep the number of reachable objects within 
a JVM small at every point in time.  Whether adding a single thread or 
multiple threads in the given case helps achieve this goal better is 
not a matter of correctness, but a matter of fine tuning.


Don't understand, what would be the difference between one or multiple 
release threads?


OutOfMemoryError in a JVM happens because (1) too many objects are 
reachable at a given point in time, or (2) the finalizer is blocked, so 
that otherwise reclaimable garbage piles up.


The problem under discussion is 2.  If we solve it by adding one or 
multiple threads, we may run into 1 in different ways (e.g., if we have 
only one thread to do the releases, that thread may block and its queue 
may grow too large; if we have multiple threads, it is unlikely that all 
of them block at the same time, etc.).


IMO, the simplest approach should be tried first.  Only if it is known 
to behave badly (i.e., lead to OutOfMemoryError) often enough a more 
complex approach should be tried.


Like always :-)



The simplest approach (call release synchronously from the finalizer 
thread) is known to deadlock.  It is arguable whether that deadlock is 
due to an error in the bridge, or due to an error in the involved UNO 
object implementations.  However, if we agree on the former, the next 
approach in terms of simplicity would be to have exactly one extra 
thread.

[...]

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Java filter batch job

2005-11-09 Thread Stephan Bergmann

Martin Gallwey wrote:

Hi Mathias,


Is there a work around or do I re-write my filter in C++ ?
  



I don't know. Before giving a judgement on that we should find out what
your problem is. :-)
 


In the second stack I sent yesterday, for the finalizer thread, the top
of the stack is:

sw680mi.dll!SwXTextDocument::setPropertyValue(const rtl::OUString 
rPropertyName={...}, const com::sun::star::uno::Any  aValue={...})
Line 1944 + 0x27C++

Which is:

void SwXTextDocument::setPropertyValue(const OUString rPropertyName,
   const Any aValue)
   throw( UnknownPropertyException, PropertyVetoException,
IllegalArgumentException,
WrappedTargetException,
RuntimeException)
{
   ::vos::OGuard aGuard(Application::GetSolarMutex());

Ie, it is blocked waiting for the SolarMutex. The dispatch thread locked
the SolarMutex long ago at SwXMLExport::exportDoc. So, essentially the
JVM garbage collection can't complete until the SwXMLExport::exportDoc
returns, which explains why it runs out of memory (causing
java.lang.OutOfMemoryError - jni_uno::BridgeRuntimeError - heap
corruption)- there is no garbage collection going on.

It would seem to me that locking the SolarMutex in the destructor of
XMLRedlineImportHelper is the cause of this problem - maybe we can find
a different solution for that doesn't involve setting properties back to
SwXTextDocument?

It seems that there is also an issue in how the jni_uno bridge recovers
from the jni_uno::BridgeRuntimeError, it should recover more gracefully
than with heap corruption. I will attempt to reduce the test case to
reproduce this.


Not sure whether the JNI--UNO bridge itself has any problems here.  It 
passes its internal BridgeRuntimeError to Java as a 
com.sun.star.uno.RuntimeException 
(Java_com_sun_star_bridges_jni_1uno_JNI_1proxy_dispatch_1call in 
jni_java2uno.cxx).  Would be interesting to see what exactly causes the 
reported heap corruption, so a reduced test case would be great.



Does this seem like a workable theory?


Yes, sounds like you found the problem.  :)


Thanks,

Martin


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Java filter batch job

2005-11-09 Thread Stephan Bergmann

Mathias Bauer wrote:

Martin Gallwey wrote:



In the second stack I sent yesterday, for the finalizer thread, the top
of the stack is:

sw680mi.dll!SwXTextDocument::setPropertyValue(const rtl::OUString 
rPropertyName={...}, const com::sun::star::uno::Any  aValue={...})
Line 1944 + 0x27C++

Which is:

void SwXTextDocument::setPropertyValue(const OUString rPropertyName,
   const Any aValue)
   throw( UnknownPropertyException, PropertyVetoException,
IllegalArgumentException,
WrappedTargetException,
RuntimeException)
{
   ::vos::OGuard aGuard(Application::GetSolarMutex());

Ie, it is blocked waiting for the SolarMutex. The dispatch thread locked
the SolarMutex long ago at SwXMLExport::exportDoc. So, essentially the
JVM garbage collection can't complete until the SwXMLExport::exportDoc
returns, which explains why it runs out of memory (causing
java.lang.OutOfMemoryError - jni_uno::BridgeRuntimeError - heap
corruption)- there is no garbage collection going on.



But why does that method not return? The waiting Finalizer thread alone
shouldn't be a problem because it isn't guaranteed even to work at any
particular time, so it can't also be a problem when it finishes.


From the stacks in one of Martin's postings, it looks like 
SwXMLExport::exportDoc does a lot of computation (with the SolarMutex 
acquired all the time, he sais), involving calls across the JNI--UNO 
bridge.  If those computations/JNI--UNO bridge calls need enough JVM 
memory, and the (typically single-threaded!) JVM finalizer is blocked 
(as it is from the stacks), the JVM can run out of memory, which in turn 
can manifest in an OutOfMemoryError in the thread doing 
SwXMLExport::exportDoc.




It would seem to me that locking the SolarMutex in the destructor of
XMLRedlineImportHelper is the cause of this problem - maybe we can find
a different solution for that doesn't involve setting properties back to
SwXTextDocument?



The destruction of the object *must* be guarded by the SolarMutex or
otherwise you would run into the problem Kay mentioned (possibility of
crashes because of race conditions). So we have to keep it (moreover: we
miss it on several other places as KK showed in their report!).

Do I understand correctly that you think that the blocked finalizer
thread leads to an out of memory condition? Then in my understanding
there is no hope because whatever solution we choose the garbage
collection never will happen while any other API call is processed
inside the OOo process.


Not in the general case, but only if the involved API call can stall the 
involved dtor as in Martin's case.  Which is bad design, btw...


An approach that might help is if release-calls across the JNI--UNO 
bridge (and across other bridges like URP bridges) were done 
asynchronously, so that the JVM finalizer thread would not be blocked.


-Stephan


@Kay: Is that correct?

Best regards,
Mathias


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Standalone UNO (URE)

2005-10-20 Thread Stephan Bergmann

Tim michals wrote:

Is there a link to just download URE? Is this available?


Now available at download.openoffice.org.


Has there been any work on using Visual Studio express? Or Visual Studio 8?


In what way?  Using the C/C++ Compilers, Linkers etc. from those 
products should work.  A tighter integration with those products (i.e., 
not using makefiles etc.) might be on the long-term wish-list for the 
SDK, but AFAIK nothing is going on in that direction at the moment.


-Stephan


-Original Message-
From: Stephan Bergmann [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, October 11, 2005 3:01 AM

To: dev@udk.openoffice.org
Subject: Re: [udk-dev] Standalone UNO (URE)

Tim michals wrote:


When will a new release be made available?  I would more then happy to


help


test the new releases or builds.



I expect to have the OOo 2.0 (RC2) URE (i.e., URE 1.0) available on 
download.openoffice.org this week.




I'm in process of trying to decide between several frameworks UNO (URE)
being one of them.  But I just need a framework, not OOo.  Also, need to
have framework in built in debug mode.  



To have a debug build, you need to build the URE yourself. 
Unfortunately, you currently need to follow the OOo build instructions, 
and in module instsetoo_native a URE installation set will fall out of 
the build process.  This, of course, is a time consuming process, in 
that lots of OOo-specific modules not necessary for URE will also be 
built.  If you only need specific modules with debug information, there 
should be mechanisms available (a downloadable, pre-built solver) to 
only re-build those modules; the build instructions on 
www.openoffice.org should help you there.


-Stephan



I've been using XPCOM, but would like to try out UNO also



-Original Message-
From: Ingo Schmidt [mailto:[EMAIL PROTECTED] 
Sent: Monday, October 10, 2005 4:25 AM

To: dev@udk.openoffice.org; Stephan Bergmann
Subject: Re: [udk-dev] Standalone UNO (URE)

Hi Tim,

I do not get Error 2701, but Error 2703. But nevertheless, the Windows 
URE  installation set available at


http://ftp.rediris.es/mirror/openoffice.org/developer/ure_1_0/

is a m118, which had an error that breaks the msi database. I do not 
know, why this broken installation set is available for download. There 
should be a more recent installation set as soon as possible because 
this bug is fixed for a long time.
If you can use the Orca-Tool to edit the msi-database the problem is 
very easy to fix. The Orca-Tool is part of Installer SDK and can be 
downloaded for free from Microsoft. Please unpack the URE installation 
set by executing the exe-file. You are asked, where to unpack the 
installation set. In this directory you find a file ure10.msi. This is 
the msi-database that describes the installation set. Please open this 
file with the Orca-tool. Look into the table Directory (left column). 
There you find a directory name FontsFolder which has a defaultdir 
Fonts:. This is an incorrect name. Please change Fonts: to Fonts 
(without colon at the end). Then save the msi-Database and start the 
setup.exe in the local installation set again. Now it should work 
without problems.

Regards

Ingo

Stephan Bergmann wrote:




Tim Michals wrote:




I donwnload the windows version and started the installer.

URE_1.0_windows_install_en-US.exe 20-Jul-2005 14:42   6.0M

A dialog box appeared with the following message:

Internal Error 2701. Fontsfoler

Is there some way to pull this from CVS and build this project?  I 
would like to have all of the code comiled with debug on so I can use 
VS 2005 to trace the code.



The code for URE is scattered all over the OOo CVS.  The actual 
platform install sets are built in instsetoo_native.


Maybe Ingo Schmidt can give a hint on what might be the reason for 
your specific problem.


-Stephan



This is on windows XP Service pack 2.  The goal is to use UNO for a 
Windows/Linux project.


thanks, tcmichals





From: Alexandro Colorado [EMAIL PROTECTED]
Reply-To: [EMAIL PROTECTED]
To: dev@udk.openoffice.org
Subject: Re: [udk-dev] Standalone UNO (URE)
Date: Fri, 30 Sep 2005 12:30:36 +0200

Tim Michals wrote:



Is there a way to download and compile the UNO standalone? If not 
when? It was my understanding that it would be offered some time 
during OOo 2.0?




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]






Yes any repository will have it, here is the one from RedIris.
http://ftp.rediris.es/mirror/openoffice.org/developer/ure_1_0/


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Problems compiling OOo_1.1.5 under SUSE 10.0

2005-10-17 Thread Stephan Bergmann

Arnulf Wiedemann wrote:

Hello,
I updated my computer to SUSE 10.0 Linux version on an i386 architecture and 
now I have problems compiling OOo. My existing version OOo_1.1.4 does no 
longer compile (also calling build only on a subdirectory like bridges). To 
see if it works, if I start from scratch, I downloded OOo_1.1.5 sources did a 
configure --prefix=$HOME and started dmake. After about 25000 lines of log 
output it stopped with the same problem in stlport as with my existing 
version (OOo_1.1.4).


here the start of the log output:

cd ./unxlngi4.pro/misc/build/STLport-4.5/src  make -f gcc-3.0.mak -j1  
touch so_built_so_stlport

mkdir -p ../lib/obj/GCC/ReleaseD
g++ -D_REENTRANT -DGXX_INCLUDE_PATH=/usr/include/c++/4.0.2 -fexceptions 
-I../stlport -Wall -W -Wno-sign-compare -Wno-unused -Wno-uninitialized 
-ftemplate-depth-32 -O2 -fPIC dll_main.cpp -c 
-o ../lib/obj/GCC/ReleaseD/dll_main.o

../stlport/stl/_alloc.h:416: error: non-template 'rebind' used as template
../stlport/stl/_alloc.h:416: note: use '_Allocator::template rebind' to 
indicate that it is a template

../stlport/stl/_alloc.h:416: error: declaration does not declare anything
../stlport/stl/_alloc.h:417: error: '_Rebind_type' has not been declared
../stlport/stl/_alloc.h:417: error: expected nested-name-specifier before 
'other'

../stlport/stl/_alloc.h:417: error: expected ';' before 'allocator_type'
../stlport/stl/_alloc.h:418: error: 'allocator_type' does not name a type
../stlport/stl/_alloc.h: In function 'typename _STL::_Alloc_traits_Tp, 
_Allocator::allocator_type _STL::__stl_alloc_create(const _Alloc, const 
_Tp*)':

../stlport/stl/_alloc.h:460: error: non-template 'rebind' used as template
../stlport/stl/_alloc.h:460: note: use '_Alloc::template rebind' to indicate 
that it is a template

../stlport/stl/_alloc.h:460: error: declaration does not declare anything
../stlport/stl/_string.h: At global scope:

By the way, I had to modify configure to accept gcc version 4, I did that 
equivalent to gcc Version 3 (as that should be ok AFAIK).


As I did not find any hints in the mailing list archives, any help or hint is 
appreciated.


Please ask again on dev@porting.openoffice.org; I guess someone there 
can help you with compiling OOo on GCC 4.


-Stephan


Arnulf


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] uretest.zip

2005-10-11 Thread Stephan Bergmann

Hi all,

The tests and examples that accompany the URE and that are part of each 
OOo build (common.pro/bin/uretest.zip) are now also available for easy 
download at the udk.openoffice.org Documents  files section, at 
http://udk.openoffice.org/files/documents/23/2909/uretest.zip.


(And as I just wrote in another mail:  I expect to have the OOo 2.0 
(RC2) URE (i.e., URE 1.0) available on download.openoffice.org this week.)


Enjoy,
-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Standalone UNO (URE)

2005-10-11 Thread Stephan Bergmann

Tim michals wrote:

When will a new release be made available?  I would more then happy to help
test the new releases or builds.


I expect to have the OOo 2.0 (RC2) URE (i.e., URE 1.0) available on 
download.openoffice.org this week.



I'm in process of trying to decide between several frameworks UNO (URE)
being one of them.  But I just need a framework, not OOo.  Also, need to
have framework in built in debug mode.  


To have a debug build, you need to build the URE yourself. 
Unfortunately, you currently need to follow the OOo build instructions, 
and in module instsetoo_native a URE installation set will fall out of 
the build process.  This, of course, is a time consuming process, in 
that lots of OOo-specific modules not necessary for URE will also be 
built.  If you only need specific modules with debug information, there 
should be mechanisms available (a downloadable, pre-built solver) to 
only re-build those modules; the build instructions on 
www.openoffice.org should help you there.


-Stephan


I've been using XPCOM, but would like to try out UNO also



-Original Message-
From: Ingo Schmidt [mailto:[EMAIL PROTECTED] 
Sent: Monday, October 10, 2005 4:25 AM

To: dev@udk.openoffice.org; Stephan Bergmann
Subject: Re: [udk-dev] Standalone UNO (URE)

Hi Tim,

I do not get Error 2701, but Error 2703. But nevertheless, the Windows 
URE  installation set available at


http://ftp.rediris.es/mirror/openoffice.org/developer/ure_1_0/

is a m118, which had an error that breaks the msi database. I do not 
know, why this broken installation set is available for download. There 
should be a more recent installation set as soon as possible because 
this bug is fixed for a long time.
If you can use the Orca-Tool to edit the msi-database the problem is 
very easy to fix. The Orca-Tool is part of Installer SDK and can be 
downloaded for free from Microsoft. Please unpack the URE installation 
set by executing the exe-file. You are asked, where to unpack the 
installation set. In this directory you find a file ure10.msi. This is 
the msi-database that describes the installation set. Please open this 
file with the Orca-tool. Look into the table Directory (left column). 
There you find a directory name FontsFolder which has a defaultdir 
Fonts:. This is an incorrect name. Please change Fonts: to Fonts 
(without colon at the end). Then save the msi-Database and start the 
setup.exe in the local installation set again. Now it should work 
without problems.

Regards

 Ingo

Stephan Bergmann wrote:



Tim Michals wrote:



I donwnload the windows version and started the installer.

URE_1.0_windows_install_en-US.exe 20-Jul-2005 14:42   6.0M

A dialog box appeared with the following message:

Internal Error 2701. Fontsfoler

Is there some way to pull this from CVS and build this project?  I 
would like to have all of the code comiled with debug on so I can use 
VS 2005 to trace the code.



The code for URE is scattered all over the OOo CVS.  The actual 
platform install sets are built in instsetoo_native.


Maybe Ingo Schmidt can give a hint on what might be the reason for 
your specific problem.


-Stephan


This is on windows XP Service pack 2.  The goal is to use UNO for a 
Windows/Linux project.


thanks, tcmichals




From: Alexandro Colorado [EMAIL PROTECTED]
Reply-To: [EMAIL PROTECTED]
To: dev@udk.openoffice.org
Subject: Re: [udk-dev] Standalone UNO (URE)
Date: Fri, 30 Sep 2005 12:30:36 +0200

Tim Michals wrote:


Is there a way to download and compile the UNO standalone? If not 
when? It was my understanding that it would be offered some time 
during OOo 2.0?




-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]






Yes any repository will have it, here is the one from RedIris.
http://ftp.rediris.es/mirror/openoffice.org/developer/ure_1_0/


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Java filter batch job

2005-10-06 Thread Stephan Bergmann

Martin Gallwey wrote:

Hi there,

I wrote some import/export filters and wish to compare the results of a 
round tripped document with the original document. Thus, I modified the 
DocumentConverter java sample from the SDK and let it loose on my data.


However! On average, the whole JVM crashes on 1 document in 20. This is 
bad, as I can't be sure if my filters would result in a crash when in 
use in the wild - although I have never experienced a crash when running 
in non-batch mode.


Is there any reason why performing a batch conversion using the JNI UNO 
bridge to access Java filters for both import and export could cause 
problems?


Does anyone have any hints or tips on how to track down this error? Any 
obscure logging options in the JNI UNO bridge I can turn on?


The JVM installs a signal handler, so whenever soffice crashes after the 
JVM has been started in process (and whether or not that crash is in any 
way releated to using Java), you will see some error output from the 
JVM.  However, this output usually does not help to track down the 
problem (as usually the crash is in some part of soffice unrelated to 
Java).  The best might be to run soffice from within a debugger to get 
some more meaningful stacktrace.


-Stephan


Samples of JVM crash logs are attached.

Thanks,

Martin

[...]

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Standalone UNO (URE)

2005-10-04 Thread Stephan Bergmann

Alexandro Colorado wrote:

Tim Michals wrote:

Is there a way to download and compile the UNO standalone? If not 
when? It was my understanding that it would be offered some time 
during OOo 2.0?

Yes any repository will have it, here is the one from RedIris.
http://ftp.rediris.es/mirror/openoffice.org/developer/ure_1_0/


...which will hopefully make it to download.openoffice.org really soon. 
 Also, uretest.zip contains useful tests/examples for programming 
against the URE, and the contents of that zip are in the CVS at 
ure/source/uretest.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] Thoughts on String Construction / Destruction Performance

2005-10-04 Thread Stephan Bergmann

Kay Ramme - Sun Germany - Hamburg wrote:

Hi guys,

Thorsten Behrens wrote:


Eike Rathke [EMAIL PROTECTED] writes:



A specialized parser could almost certainly be faster than the general
SAX parser passing strings back and forth. I wouldn't do it with
lex/yacc though, they're a nightmare to maintain, and in case wrong code
was generated, which can happen, you're almost lost. I'd prefer
boost::spirit instead, but it might be even more work to implement the
parser. I've no idea though whether boost::spirit would be suitable to
parse an ODF tree.



hm. I'd profile a larger test case beforehand - spirit is a recursive
parser vs. yacc being table-driven. But OTOH, maybe contemporary
optimizers are able to compensate for that. And I'd definitely bump
our boost to 1.33, then - spirit (and lots of other stuff) has been
improved a lot.

At least in theory an unlimited (in the sense of programming language 
constructs etc.) parser generator, as yacc, should be better than a 
limited one, as boost::spirit. I know, that in practice the gcc C++ 
parser, which was AFAIK originally a bison generated parser, has been 
replaced by a hand written one. Which seems to show that bison does 
_not_ generate optimal code.


yacc/bison can only handle lalr(1) grammars, so if it is 
difficult/impossible to press your grammar into that form (and for C++ 
it is at least difficult), you are better off using some other approach 
than lalr(1).  This does not necessarily have anything to do with the 
performance of the resulting parser, and this definitely has nothing to 
do with whether a parser generator is implemented as a stand-alone tool 
or as an embedded DSL.


-Stephan

Reaching the point where the parser becomes the main bottleneck, we 
should try out independent implementations, using boost::spirit and 
bison/yacc. Personally, I am a fan of domain oriented prog. languages 
and therefor would favor bison. But certainly would be open for 
everything fastclean :-)


Kay


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] pyuno_module.cxx

2005-09-22 Thread Stephan Bergmann

Joerg Budischewski wrote:

Hi,


- echo $PYTHONPATH

PYTHONPATH: Undefined variable.


this is not as it should be. Do you use the standard OOo configure 
process (or maybe an so environment ?


So a

setenv PYTHONPATH 
/so/ws/SRC680/unxlngi6.pro/lib.m130/pyuno:/so/ws/SRC680/unxlngi6.pro/lib.m130:/so/ws/SRC680/unxlngi6.pro/lib.m130/python:/so/ws/SRC680/unxlngi6.pro/lib.m130/python/lib-dynload 



should do for you.

Bye,

Joerg


Thanks Jörg,

For whatever reason, in the Hamburg build env PYTHONPATH is not set (I 
also had to add the local .../testtools/unxlngi6.pro/lib output 
directory to PYTHONPATH, or else the test that tries to register 
samplecomponent would fail).  But now, everything works fine, on plain 
m130 and on CWS warnings01.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] error while instantiate com.sun.star.awt.Toolkit service.

2005-09-22 Thread Stephan Bergmann

Adriano Colaianni wrote:
I'm registering manually succesfully a new UNO component (implemented in 
Java) with regcomp. This is a simple component impementing XMain interface.

After I launch it with UNO Executables:


Unfortunately, many UNO services implemented by OOo only work reliably 
within the soffice process.  Without having actually checked it, I 
assume that com.sun.star.awt.Toolkit is such a problematic service (its 
internal use of VCL is a pretty sure sign of that).  As a rule of thumb, 
those UNO services with UNOIDL specifications in CVS module udkapi 
should work independent of OOo and the soffice process, while no such 
gurantee is given for CVS module offapi.


A workaround, wich might or might not be useful for you, is to not use 
the uno executable to execute your application, but rather make your 
application a JAR that uses the simple bootstrap mechanism (which behind 
the scenes starts an soffice process and gives your application access 
to soffice's component context).


-Stephan

/[EMAIL PROTECTED] program]$ uno -s MyMain -ro services.rdb -ro 
types.rdb -ro test.rdb

Arriva 1 !!!

An unexpected exception has been detected in native code outside the VM.
Unexpected Signal : 11 occurred at PC=0xA814C4D5
Function=_ZN11Application8IsInMainEv+0x17
Library=/opt/openoffice.org1.9.125/program/libvcl680li.so

Current Java thread:
   at com.sun.star.bridges.jni_uno.JNI_proxy.dispatch_call(Native 
Method)

   at com.sun.star.bridges.jni_uno.JNI_proxy.invoke(JNI_proxy.java:204)
   at $Proxy3.createInstanceWithContext(Unknown Source)
   at MyExe.MyAppl.createMainWindow(MyAppl.java:36)
   at MyExe.UnoExeMain.run(UnoExeMain.java:26)
...
#
# The exception above was detected in native code outside the VM
#
# Java VM: Java HotSpot(TM) Client VM (1.4.2_08-b03 mixed mode)
#
# An error report file has been saved as hs_err_pid6736.log.
# Please refer to the file for further information.
#
Aborted/


The exception is raised in:

/package MyExe;

import com.sun.star.uno.Exception;
import com.sun.star.uno.UnoRuntime;
import com.sun.star.lang.XMultiComponentFactory;
import com.sun.star.uno.XComponentContext;
import com.sun.star.awt.XToolkit;
import com.sun.star.awt.XWindow;
import com.sun.star.awt.XWindowPeer;
import com.sun.star.awt.WindowDescriptor;
import com.sun.star.awt.WindowClass;
import com.sun.star.awt.Rectangle;
import com.sun.star.awt.WindowAttribute;
import com.sun.star.frame.XFrame;



public class MyAppl {

   /**
* @param args
*/
   public MyAppl(XComponentContext c) {
   xMCF = c.getServiceManager();
   xCCtx = c;
   }

   public void createMainWindow() {
   try {
   System.out.println(Arriva 1 !!!);
   XFrame xFrame=(com.sun.star.frame.XFrame) 
UnoRuntime.queryInterface(
   com.sun.star.frame.XFrame.class, 
xMCF.createInstanceWithContext(

   com.sun.star.frame.Task,xCCtx));
   // create Toolkit-Service
--Object oToolkit = xMCF.createInstanceWithContext(
com.sun.star.awt.Toolkit, xCCtx);
System.out.println(Arriva 2 !!!);
XToolkit xToolkit = (XToolkit) UnoRuntime.queryInterface(
   XToolkit.class, oToolkit);/


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] xpcom_uno module

2005-09-21 Thread Stephan Bergmann

Darragh Sherwin wrote:

Daniel,

I have had some success building the xpcom_uno bridge using my own
mozilla build (xulrunner).

The earlier issue about XPT_NewArena is solved by linking to xul rather
than xpcom_core. Seems mozilla have done away with xpcom_core.dll and
have move the functions to xul.dll. I have included a patch below for this.

Also, in source/xpcom_uno/xpcomvariant.cxx, the nsAString class used is
 defined as nsAString_external if MOZILLA_INTERNAL_API is undefined, see
for information:
http://lxr.mozilla.org/mozilla/source/xpcom/string/public/nsStringAPI.h#812

Should MOZILLA_INTERNAL_API be defined?

Thanks


Darragh,

Just to let you know: Daniel is currently on vacation, so it may take a 
couple of weeks before he can respond.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] how do i avoid interprocess connection?

2005-09-20 Thread Stephan Bergmann

Adriano Colaianni wrote:

Hi all,
   I want to develop a simple application without the use of 
interprocess connection (socket, pipe) to create services.
   Can I create all the service of UNO by a local Service manager (as 
the example RunComponent.java)?

How is it possible?
Thanks in advance


All the services of UNO is too unspecific to give you a good answer.

If you want to use OOo's UNO services (like for editing a text 
document), then you need the complete OOo application running, and you 
need to use interprocess communication (nicely shielded by the new 
simple bootstrap mechanism, available at least in C++ and Java).


If you do not need any of OOo's office-related services, but only the 
base services that are part of the URE (like a service to decompose 
URLs, or a service to reflectively access other UNO entities), then you 
should check out the URE.  It comes with an accompanying uretest.zip 
(built in CVS module ure) that contains example UNO applications (using 
the uno executable, you only need to supply a UNO component that 
implements com.sun.star.lang.XMain; the uno executable will then provide 
the component context and service manager and instantiate your component).


This might be too broad an overview for your specific needs.  Don't 
hesitate to ask for details, depending on which way you want to go.


-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] pyuno_module.cxx

2005-09-20 Thread Stephan Bergmann

Joerg Budischewski wrote:

Hi Stephan,

you can remove the runtime instances, they just cash some hashmap 
lookups and have no side effects. The PyThreadAttach/Detach classes on 
the other hand have side effects and cannot be removed.


Would be nice if you can execute the pyuno tests in 
testtools/source/bridgetest/pyuno (at best before and ) after your 
modifications. You currently need to set UNO_TYPES and UNO_SERVICES 
environment variable to the values passed formerly by using the -env: 
command line switches, just have a look in the makefile.


I'm too dumb to get that working, independent of the CWS changes.  What 
exactly do I need to do on a plain SRC680m130 to execute that test (on 
Linux)?


-Stephan

Umn, I know, pyuno currently raises a lot of warnings, hope, you get 
through though.


Good luck and bye,

Joerg

Stephan Bergmann wrote:


Friends and maintainers of pyuno,  :)

Making our code base warning-clean (see thread on dev@openoffice.org), 
I stumbled over a detail in pyuno/source/module/pyuno_module.cxx rev. 
1.9.14.1 I am not sure how to resolve:  The two functions PyEnum2Enum 
and PyType2Type used to take a Runtime argument that they did not use, 
so I removed it.  However, in lines 458 and 483 of pyuno_module.cxx, 
these functions got called with a freshly created Runtime instance:


  {
Runtime runtime;
PyType2Type( obj, runtime );
  }

and I am not sure whether the Runtime constructor should still be 
called for side effects:


  {
Runtime runtime;
PyType2Type( obj );
  }

or whether that is not needed:

  {
PyType2Type( obj );
  }

-Stephan


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] how do i avoid interprocess connection?

2005-09-20 Thread Stephan Bergmann

Adriano Colaianni wrote:
Does Applications like Draw, Impress, make interprocess connection to 
instantiate UNO's Services? How do they work?
I'm going to develop a simple application that works at the same level 
of Draw or Impress (no OOo client application ).

After an explanation of Developer's Guide I have the next scenario:


Client|  S  U  |service1|  ?   |Impress
Appl. |  O  R  |.   |  ?   |Draw
 |  C  P  |.UNO|  ?   |Writer
 |  K |.   |  ?   |.
 |  E |.   |  ?   |.
 |  T |serviceN|  ?   |.


Impress, Writer, etc. are part of the soffice process, and as such 
access any OOo UNO services in-process (in fact, each of Impress, 
Writer, etc. also *implements* its share of those OOo UNO services).


If the entity you develop is intended to be an integral part of OOo, 
like Draw, Impress, Writer, etc., then it looks like it should be a 
(UNO) component that is instantiated within the soffice process (and for 
details on how to integrate it into OOo's menus etc. 
dev@api.openoffice.org would probably be the right mailing list).


-Stephan


Stephan Bergmann wrote:


Adriano Colaianni wrote:


Hi all,
   I want to develop a simple application without the use of 
interprocess connection (socket, pipe) to create services.
   Can I create all the service of UNO by a local Service manager (as 
the example RunComponent.java)?

How is it possible?
Thanks in advance




All the services of UNO is too unspecific to give you a good answer.

If you want to use OOo's UNO services (like for editing a text 
document), then you need the complete OOo application running, and you 
need to use interprocess communication (nicely shielded by the new 
simple bootstrap mechanism, available at least in C++ and Java).


If you do not need any of OOo's office-related services, but only the 
base services that are part of the URE (like a service to decompose 
URLs, or a service to reflectively access other UNO entities), then 
you should check out the URE.  It comes with an accompanying 
uretest.zip (built in CVS module ure) that contains example UNO 
applications (using the uno executable, you only need to supply a UNO 
component that implements com.sun.star.lang.XMain; the uno executable 
will then provide the component context and service manager and 
instantiate your component).


This might be too broad an overview for your specific needs.  Don't 
hesitate to ask for details, depending on which way you want to go.


-Stephan


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] pyuno_module.cxx

2005-09-12 Thread Stephan Bergmann

Joerg Budischewski wrote:

Hi Stephan,

you can remove the runtime instances, they just cash some hashmap 
lookups and have no side effects. The PyThreadAttach/Detach classes on 
the other hand have side effects and cannot be removed.


Would be nice if you can execute the pyuno tests in 
testtools/source/bridgetest/pyuno (at best before and ) after your 
modifications. You currently need to set UNO_TYPES and UNO_SERVICES 
environment variable to the values passed formerly by using the -env: 
command line switches, just have a look in the makefile.


I will do that.

Umn, I know, pyuno currently raises a lot of warnings, hope, you get 
through though.


Not thaaat many, actually (at least on Solaris and Linux)...

Thanks,
-Stephan


Good luck and bye,

Joerg

Stephan Bergmann wrote:


Friends and maintainers of pyuno,  :)

Making our code base warning-clean (see thread on dev@openoffice.org), 
I stumbled over a detail in pyuno/source/module/pyuno_module.cxx rev. 
1.9.14.1 I am not sure how to resolve:  The two functions PyEnum2Enum 
and PyType2Type used to take a Runtime argument that they did not use, 
so I removed it.  However, in lines 458 and 483 of pyuno_module.cxx, 
these functions got called with a freshly created Runtime instance:


  {
Runtime runtime;
PyType2Type( obj, runtime );
  }

and I am not sure whether the Runtime constructor should still be 
called for side effects:


  {
Runtime runtime;
PyType2Type( obj );
  }

or whether that is not needed:

  {
PyType2Type( obj );
  }

-Stephan


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



[udk-dev] pyuno_module.cxx

2005-09-09 Thread Stephan Bergmann

Friends and maintainers of pyuno,  :)

Making our code base warning-clean (see thread on dev@openoffice.org), I 
stumbled over a detail in pyuno/source/module/pyuno_module.cxx rev. 
1.9.14.1 I am not sure how to resolve:  The two functions PyEnum2Enum 
and PyType2Type used to take a Runtime argument that they did not use, 
so I removed it.  However, in lines 458 and 483 of pyuno_module.cxx, 
these functions got called with a freshly created Runtime instance:


  {
Runtime runtime;
PyType2Type( obj, runtime );
  }

and I am not sure whether the Runtime constructor should still be called 
for side effects:


  {
Runtime runtime;
PyType2Type( obj );
  }

or whether that is not needed:

  {
PyType2Type( obj );
  }

-Stephan

-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Re: [udk-dev] How to recognize a Service with XInvocation

2005-09-08 Thread Stephan Bergmann

Arnulf Wiedemann wrote:

Hi Stephan,
Am Mittwoch, 7. September 2005 14:51 schrieb Stephan Bergmann:


Arnulf Wiedemann wrote:


Hi,
using XInvocation2 method getMemberNames I can get all the methods and
properties of an object. Using XInvocation hasMethod and hasProperty I
can distinguish between methods and properties.


I don't know XInvocation in detail, but from looking at the
documentation, XInvocation2.getInfo() seems to be your friend here.




sorry, that does not help, there is a lot of information available in 
InvocationInfo, but nothing which tells me, if that is a service.


XInvocation is about the interface methods (and maybe interface 
attributes---I do not know) and XPropertySet-related properties 
supported by an object; services have nothing to do with that.



 In the list of properties there


are sometimes service names.


Can you give an example of that (what kind of object did you inspect)?
This sounds like an error to me.



the object is a com.sun.star.frame.Desktop, created with a 
createInstanceWithContext. The funny property is:
DispatchRecorderSupplier 


It appears that the given object supports (via its XPropertySet 
interface) a property named DispatchRecordSupplier.  That there is 
also a service named com.sun.star.frame.DispatchRecordSupplier is a 
coincidence.


It is in the list returned from getMemberNames and hasProperty returns true 
for that member name, whereas hasMethod returns false (which is correct).


If I use the Desktop object and call getPropertyValue with parameter 
DispatchRecorderSupplier I get the strange object index back.


com.sun.star.beans.XPropertySet.getPropertyValue returns a value of type 
ANY.  I assume that in your case it returns a value of type ANY that 
containts a value of an interface type (probably because the given 
property named DispatchRecordSupplier is of an interface type---I do 
not know).  For a value of an interface type, URP uses the combination 
of an empty OID string and a cache index of 0x to represent the null 
reference.  In other words, getPropertyValue(DispatchRecordSupplier) 
happens to return a null reference in your case.


(By the way, XInvocation appears to be somewhat flawed, as it throws 
together interface methods and XPropertySet-related properties, which 
can lead to name clashes.)


-Stephan


Arnulf


-Stephan

 How can I find out, that a property is a service


name? I only found out the using getPropertyValue on a service I get an
empty object id and an object cache index 0x directly from the urp
protocol. Are that the criteria for a service?

Arnulf


-
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



  1   2   >