VA 8.5 - WebServices, Headless IC packaging

87 views
Skip to first unread message

Marten Feldtmann

unread,
Dec 28, 2011, 6:22:57 AM12/28/11
to va-sma...@googlegroups.com
I tried to expand my headless IC base to WebServices and RMI support, but the headless IC packager fails on the packaging rules in

SstWebServicesContainerApp class>>packagingRulesFor:

...
aPackagedImage initializeClassVariable: 'Containers' to: 'SstWSContainer newContainerCollection' inClassNamed: #SstWSContainer


on the other hand: why does one need this instead of doing the initialization by manual code in the #loaded method or (in case of this application) in the method #setupAfterLoad, which could be introduced here ...

Wayne Johnston

unread,
May 22, 2014, 6:21:49 AM5/22/14
to va-sma...@googlegroups.com
I am getting that also on 8.5.2, using web services for the first time in this headless image.  Seems like the runtime image works fine though.

Creation of a packaging rule by SstWebServicesContainerApp class>>#packagingRulesFor: failed. The message used to create the rule was:

#initializeClassVariable:to:inClassNamed:

The arguments used were:

(1) 'Containers'
(2) 'SstWSContainer newContainerCollection'
(3) #SstWSContainer

John O'Keefe

unread,
May 23, 2014, 5:13:54 PM5/23/14
to va-sma...@googlegroups.com
Marten -

First, you don't need to package these ICs -- sstws.ic and sstrmi.ws are shipped with the product.

Second, you don't need to package them in XD, they package just fine in a development image.

John

Wayne Johnston

unread,
May 25, 2014, 5:13:27 PM5/25/14
to va-sma...@googlegroups.com
Perhaps I did a bad thing, posting my reply to this old posting of Marten's.  I found it via a search.  I'm not doing anything with ICs, but I am getting that same packaging error -
Packaging Rule Error: Expression does not compile.
plus the other details I mentioned above.

John O'Keefe

unread,
May 27, 2014, 8:05:01 AM5/27/14
to va-sma...@googlegroups.com
Wayne -

If you are packaging in XD, packaging rules involved in the operation cannot in general contain any message sends as part of the arguments. So argument (2) 'SstWSContainer newContainerCollection' is invalid. The Packager, and all the packaging rules,execute in the development environment, but the arguments to the packaging rules need to be relative to the content of the passive (XD) image and code cannot be executed in a passive image.

John 

Wayne Johnston

unread,
May 27, 2014, 9:55:08 AM5/27/14
to va-sma...@googlegroups.com
John:

I think you are saying those packaging rules are bad, I didn't create them.  This is what I have as the only (117/2002) edition of SstWebServicesContainerApp class>>#packagingRulesFor: - a "V 6.0.0" version of the class, which loaded in my passive image:


packagingRulesFor: aPackagedImage
" Nearly all classes in this application can be created dynamically via an XML file.  Therefore, do not reduce the contents of this
application "
aPackagedImage doNotReduceSubApplicationNamed: self symbol.
Reply all
Reply to author
Forward
0 new messages