In VisualWorks 7.6, we build a Windows UI application from the
visual.im-image using the RTP (Runtime Packager). The Cincom base image (visual.im) includes bundle "Tools-IDE", which has a number of overrides. To me it looks like the RTP unloads bundle "Tools-IDE", but the overridden methods are not restored. Two methods having their original definition in package "Graphics-Visual Objects" causes our application to fail, as they are not defined in the resulting runtime image: VisualPart >>globalPointToLocal: VisualPart >>localPointToGlobal: Does anyone know whether there is a problem with the RTP unloading "Tools-IDE" but not restoring overridden methods? Some details about this problem… Our build process is automated by creating a "st" script which is passed to the Cincom base image: |connection rtp| Parcel loadParcelByName: 'StoreForOracle'. connection := Store.ConnectionProfile new name: 'Load'; driverClassName: #OracleConnection; environment: 'prod'; userName: 'nn'; password: 'nn'; tableOwner: 'bern58'; yourself. Store.DbRegistry connectTo: connection. (Store.Bundle mostRecentVersionOfPundleWithName: 'OurProjectTopBundle') loadSrc. Store.DbRegistry closeConnection. rtp := RuntimePackager.RuntimeBuilderUI new. rtp open. rtp options stripGlobals: false. rtp options startupClass: OurStartUpClass. rtp options startupMethod: #startUp. rtp options imagePath: 'OurAppName'. rtp options errorNotifierClass: Core.ErrorNotifier. rtp options imageDumperClass: Core.ErrorDumper. rtp options operatingSystems: (Set with: #win). rtp options uiLooks: (Set with: #win). ObjectMemory globalGarbageCollect. rtp stripSystemSilent. The last called method (#stripSystemSilent) is implemented like this: interactWithUser := false. WindowManager managerRegistryDo: [:each | each scheduledWindows do: [:e | e close]]. self stripSystem. interactWithUser := true We have a workaround for the problem which is to remove the two overrides causing problems manually from the build image. Doing this feels not too safe, as there could be other overrides we have missed. Below are parts of the error log caused by the problem: ==2008/5/8==13:07:50==BEGIN RUNTIME DIAGNOSTIC DUMP Note: this file stored in VisualWorks #source (UTF-8) encoding Cause of Dump: Unhandled exception: Message not understood: #localPointToGlobal: Smalltalk Version: 'VisualWorks(R), 7.6 of March 3, 2008' Object Memory versionId: #[63 41 63 192 76 0 0 0 63 41 63 192] Class creating this dump: ErrorDumper ------------------------------------------------------------ Active Process Process named: 'Unnamed Process' Process priority: 50 Process identity hash: 12432 Context Stack: [1] WinXPActionButtonView(Object)>>doesNotUnderstand: [2] WinXPTriggerButtonController(Controller)>>setSensorFromView [3] WinXPTriggerButtonController(Controller)>>sensor [4] WinXPTriggerButtonController(BasicButtonController)>>simulateMousePress [5] KeyboardProcessor>>doDefaultAction [6] WinXPMenuButtonController(MenuButtonController)>>processKeyboardEvent: [7] WinXPMenuButtonController(Win95MenuButtonController)>>processKeyboardEvent: [8] WinXPMenuButtonController(Controller)>>keyPressedEvent: [9] KeyPressedEvent>>dispatchTo: Runar _______________________________________________ vwnc mailing list [hidden email] http://lists.cs.uiuc.edu/mailman/listinfo/vwnc |
Free forum by Nabble | Edit this page |