View Issue Details

IDProjectCategoryView StatusLast Update
0005082Open CASCADEOCCT:WOKpublic2012-01-17 17:29
ReporterrlnAssigned To 
PrioritynormalSeveritytrivial 
Status closedResolutionfixed 
OSAll 
Fixed in Version5.1.2 
Summary0005082: Some corrections and improvements in WOK Java extractor.
DescriptionSeveral problems have been corrected and some improvements have been introduced:

- Processing of the Standard_Transient subclasses (i.e. those manipulated by
handle) have been
  corrected. This has been achieved with introducing a new base Java class
jcas.Transient (in the jcas
  nocdlpack), which extends jcas.Object. The latter remains a base class for all
classes
  manipulated by value as well as Standard_Storable subclasses.
  Redundant methods IsKind() and DynamicType() of former jcas.Object have been
removed. This
  allows now to correctly extract classes of the Standard package.
  Some limitation remains for Standard_Persistent subclasses (see below).

- The extractor now correctly extracts classes without default constructor. This
requirement
  does not persist anymore. If the null object is passed from C++ to Java (what
is impossible
  in normal case) then an exception is thrown.

- Processing of large interface unit(s) declared in the jni has been improved.
In the past,
  the list of java files passed to the java compiler might lead to the command
line overflow
  (more than 65Kb) what resulted in failed compilation. Now this has been
corrected and several
  compilations are launched if necessary.

- Dependency chain between generated .java, .class, .h and .cxx files has been
created.
  WOK now generates a dependency chain between generated files so that if some
classes
  become out of extraction scope (e.g. removed from the interface unit) their
generated
  files will be removed.

- Command line to launch the java compiler has been corrected - it does not
include redundant
  rt.jar anymore (this option was simply ignored in the past).

- Generated .h files are now put into the drv directory of the unit instead of
common inc
  directory of the workbench. Thus, packaging has been improved.


WOK User's Guide has been extended and describes now how to use the JNI
extractor.
 
Remaining limitation:
WOK JNI extractor is still not able to correctly process classes inheriting
Standard_Persistent. In
fact, in Open CASCADE they form a hierarchy similar to one of Standard_Transient
subsclasses, i.e.
Pack_Class and Handle_Pack_Class. JNI today considers Standard_Persistent
subclasses as classes
manipulated by value, not by handle, and therefore creates invalid *_java.cxx
files.


NOTE1. As a non-regression test the compilation of the standard Java sample is
suggested.

NOTE2. This bug fix originates from pre-sales for the GTISoft company (contact
RLN for details).
Additional information
and documentation updates
Documentation remark, added by RLN 2004-01-27 16:16:45:

New features:
(See attachment BUG-5082.zip)
Improvements:
(See attachment BUG-5082.zip)
Changes:
(See attachment BUG-5082.zip)
Modified entities:
(See attachment BUG-5082.zip)
TagsNo tags attached.
Test case number

Attached Files

  • BUGS-5082.zip (8,452 bytes)
  • 5082_patch040128.zip (15,605 bytes)
  • 5082_patch040209.zip (16,510 bytes)

Activities

2004-01-27 16:15

 

BUGS-5082.zip (8,452 bytes)

2004-01-28 14:06

 

5082_patch040128.zip (15,605 bytes)

2004-02-09 08:09

 

5082_patch040209.zip (16,510 bytes)

Issue History

Date Modified Username Field Change
2004-01-23 17:42 bugmaster Assigned To bugmaster => rln
2004-01-23 17:42 bugmaster Status new => assigned
2004-01-27 18:11 rln CC => vtn, nkv, vsv, imv
2004-01-28 16:23 rln Status assigned => resolved
2004-03-03 09:27 bugmaster Status resolved => closed
2004-03-03 09:27 bugmaster Fixed in Version => 5.1.2
2004-03-03 09:27 bugmaster Resolution @0@ => fixed
2012-01-17 17:29 atp Assigned To rln =>
2012-01-17 17:29 atp Description Updated
2012-01-17 17:29 atp Additional Information Updated