Consultor Eletrônico



Kbase P157369: Changes performed to the class with static members class are not picked up by the static instance
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   09/02/2010
Status: Unverified

SYMPTOM(s):

Changes performed to the class with static members class are not picked up by the static instance

Tools must be restarted in order to take the changes, brought to the class with static members, into account

Changes are picked up for any regular instance (outside the tools)

FACT(s) (Environment):

Class with static member is instantiated then modified in the tools
All Supported Operating Systems
All Supported Operating Systems
Progress/OpenEdge Product Family
OpenEdge 10.x

CAUSE:

This is expected behavior.

During the design of static class members the issue described was discussed. We evaluated multiple solutions to this issue, but in the end concluded that this issue should be addressed via the tools. The use of static methods is a good coding model when it comes to enforcing a more stateless compliant code. This is because a static method will not compile if it refers to an instance buffer (a default buffer has a global scope).

FIX:

To that end the 10.2A OpenEdge Architect provides the Run configuration option, which by default creates a new AVM session for each test run. To navigate to this option open the OpenEdge properties page and you will notice that the 'Use shared AVM' option is NOT checked.
Assuming that you are using Architect and this option you should not be having the issues you described. If you have 'checked' the 'Use shared AVM' option or are using the Procedure Editor the problem you described will occur. At this time we are not planning on resolving this issue in the Procedure Editor.