This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 11732 - i18n - Japanese package name can't be parsed on GUI editing.
Summary: i18n - Japanese package name can't be parsed on GUI editing.
Status: CLOSED FIXED
Alias: None
Product: java
Classification: Unclassified
Component: Unsupported (show other bugs)
Version: 3.x
Hardware: Sun Solaris
: P3 blocker (vote)
Assignee: issues@java
URL:
Keywords: I18N
Depends on:
Blocks:
 
Reported: 2001-04-25 11:40 UTC by akiko.mochizuki
Modified: 2007-09-26 09:14 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
The same class object in English and Japanese package name. (7.57 KB, image/gif)
2001-07-20 20:35 UTC, akiko.mochizuki
Details
The source code in English package. (13.45 KB, image/gif)
2001-07-20 20:35 UTC, akiko.mochizuki
Details
The source code in Japanese package. (13.70 KB, image/gif)
2001-07-20 20:35 UTC, akiko.mochizuki
Details

Note You need to log in before you can comment on or make changes to this bug.
Description akiko.mochizuki 2001-04-25 11:40:33 UTC
StringIndexOutOfBoundsException occurs and the explorer view of 
the package is not correct. 

How to reproduce
----------------
1. Mount a directory (ex. /opt/ffj-applet). 
2. Open the context menu from the mounted directory -> Click "NewPackage"
3. "Create New Package" dialog is opened. 
4. Type Japanese package name in "Name" field.
5. The package is displayed correctly in Japanese in Explorer. 
6. Open the context menu from the package 
        -> Click "New" -> Click "AWT Forms"   -> Click "Applet" 
     or -> Click "New" -> Click "Swing Forms" -> Click "JApplet"
7. New Form Template Wizard is opened. 
8. Type Japanese object name in "Name" field and push "Finish" button.
9. New Applet/JApplet is produced and its Form Editor and Source Editor are
opened. 
10. Add some component on each Applet/JApplet. 

Test environment
----------------
Forte for Java, EE v.3.0 (Build 010420_1)
JDK 1.3.0
Solaris 8 u2, ja_JP.ja_EUC

Issue
-----
After step 9, in the Explorer class object can't be displayed. 
Please see the attached snapshot of Explorer.
  English "applet" package (upper) has 2 nodes of the class and frame object.
  Japanese "applet" package (lower) has 1 node of the frame object.
Please see attached snapshots of Source Editor, also. 
These are the same code without package. 
  package_en.gif : in case of English package name. 
  package_ja.gif : in case of Japanese package name.
  
However compilation (External - JDK1.3, Internal, fastjavac) and 
execution (AppletViewer and internal web browser) 
are succeeded with no error. 

Right after step 7 and 10, the exception comes out. 
[From ide.log]
Exception during processing of
org.netbeans.modules.java.parser.ParsingSupport$Processor@142a3f
java.lang.StringIndexOutOfBoundsException: String index out of range: -7
        at java.lang.String.substring(String.java:1515)
        at java.lang.String.substring(String.java:1482)
        at
org.netbeans.modules.java.gj.ParserEngine.findClazzFile(ParserEngine.java:298)
        at
org.netbeans.modules.java.gj.ParserEngine.symbolsComputed(ParserEngine.java:308)
        at
org.netbeans.lib.javac.v8.comp.ParsingEnter._case(ParsingEnter.java:75)
        at org.netbeans.lib.javac.v8.tree.Tree$ClassDef.visit(Tree.java:389)
        at org.netbeans.lib.javac.v8.comp.Enter.classEnter(Enter.java:451)
        at org.netbeans.lib.javac.v8.comp.Enter.classEnter(Enter.java:465)
        at org.netbeans.lib.javac.v8.comp.Enter._case(Enter.java:479)
        at org.netbeans.lib.javac.v8.tree.Tree$TopLevel.visit(Tree.java:326)
        at org.netbeans.lib.javac.v8.comp.Enter.classEnter(Enter.java:451)
        at org.netbeans.lib.javac.v8.comp.Enter.classEnter(Enter.java:465)
        at org.netbeans.lib.javac.v8.comp.Enter.main(Enter.java:632)
        at
org.netbeans.modules.java.gj.ParserEngine.attributeTree(ParserEngine.java:179)
        at
org.netbeans.modules.java.gj.ParserEngine.parseObject(ParserEngine.java:150)
        at
org.netbeans.modules.java.gj.JavaParserEngine.process(JavaParserEngine.java:107)
        at
org.netbeans.modules.java.parser.ParsingSupport$Processor.process(ParsingSupport.java:635)
        at
org.netbeans.modules.java.parser.ParsingSupport$Processor.parseLockModel(ParsingSupport.java:595)
        at
org.netbeans.modules.java.parser.ParsingSupport$Processor.run(ParsingSupport.java:535)
        at org.openide.util.Task.run(Task.java:124)
        at
org.openide.util.RequestProcessor$ProcessorThread.run(RequestProcessor.java:626)
Exception during processing of
org.netbeans.modules.java.parser.ParsingSupport$Processor@369767
java.lang.StringIndexOutOfBoundsException: String index out of range: -7
        at java.lang.String.substring(String.java:1515)
        at java.lang.String.substring(String.java:1482)
        at
org.netbeans.modules.java.gj.ParserEngine.findClazzFile(ParserEngine.java:298)
        at
org.netbeans.modules.java.gj.ParserEngine.symbolsComputed(ParserEngine.java:308)
        at
org.netbeans.lib.javac.v8.comp.ParsingEnter._case(ParsingEnter.java:75)
        at org.netbeans.lib.javac.v8.tree.Tree$ClassDef.visit(Tree.java:389)
        at org.netbeans.lib.javac.v8.comp.Enter.classEnter(Enter.java:451)
        at org.netbeans.lib.javac.v8.comp.Enter.classEnter(Enter.java:465)
        at org.netbeans.lib.javac.v8.comp.Enter._case(Enter.java:479)
        at org.netbeans.lib.javac.v8.tree.Tree$TopLevel.visit(Tree.java:326)
        at org.netbeans.lib.javac.v8.comp.Enter.classEnter(Enter.java:451)
        at org.netbeans.lib.javac.v8.comp.Enter.classEnter(Enter.java:465)
        at org.netbeans.lib.javac.v8.comp.Enter.main(Enter.java:632)
        at
org.netbeans.modules.java.gj.ParserEngine.attributeTree(ParserEngine.java:179)
        at
org.netbeans.modules.java.gj.ParserEngine.parseObject(ParserEngine.java:150)
        at
org.netbeans.modules.java.gj.JavaParserEngine.process(JavaParserEngine.java:107)
        at
org.netbeans.modules.java.parser.ParsingSupport$Processor.process(ParsingSupport.java:635)
        at
org.netbeans.modules.java.parser.ParsingSupport$Processor.parseLockModel(ParsingSupport.java:595)
        at
org.netbeans.modules.java.parser.ParsingSupport$Processor.run(ParsingSupport.java:535)
        at org.openide.util.Task.run(Task.java:124)
        at
org.openide.util.RequestProcessor$ProcessorThread.run(RequestProcessor.java:626)


Add component
-------------
Exception during processing of
org.netbeans.modules.java.parser.ParsingSupport$Processor@1a1f
java.lang.StringIndexOutOfBoundsException: String index out of range: -6
        at java.lang.String.substring(String.java:1515)
        at java.lang.String.substring(String.java:1482)
        at
org.netbeans.modules.java.gj.ParserEngine.findClazzFile(ParserEngine.java:298)
        at
org.netbeans.modules.java.gj.ParserEngine.symbolsComputed(ParserEngine.java:308)
        at
org.netbeans.lib.javac.v8.comp.ParsingEnter._case(ParsingEnter.java:75)
        at org.netbeans.lib.javac.v8.tree.Tree$ClassDef.visit(Tree.java:389)
        at org.netbeans.lib.javac.v8.comp.Enter.classEnter(Enter.java:451)
        at org.netbeans.lib.javac.v8.comp.Enter.classEnter(Enter.java:465)
        at org.netbeans.lib.javac.v8.comp.Enter._case(Enter.java:479)
        at org.netbeans.lib.javac.v8.tree.Tree$TopLevel.visit(Tree.java:326)
        at org.netbeans.lib.javac.v8.comp.Enter.classEnter(Enter.java:451)
        at org.netbeans.lib.javac.v8.comp.Enter.classEnter(Enter.java:465)
        at org.netbeans.lib.javac.v8.comp.Enter.main(Enter.java:632)
        at
org.netbeans.modules.java.gj.ParserEngine.attributeTree(ParserEngine.java:179)
        at
org.netbeans.modules.java.gj.ParserEngine.parseObject(ParserEngine.java:150)
        at
org.netbeans.modules.java.gj.JavaParserEngine.process(JavaParserEngine.java:107)
        at
org.netbeans.modules.java.parser.ParsingSupport$Processor.process(ParsingSupport.java:635)
        at
org.netbeans.modules.java.parser.ParsingSupport$Processor.parseLockModel(ParsingSupport.java:595)
        at
org.netbeans.modules.java.parser.ParsingSupport$Processor.run(ParsingSupport.java:535)
        at org.openide.util.Task.run(Task.java:124)
        at
org.openide.util.RequestProcessor$ProcessorThread.run(RequestProcessor.java:626)
--- End.
Comment 1 akiko.mochizuki 2001-04-25 11:44:05 UTC
Created attachment 1242 [details]
The same class object in English and Japanese package name.
Comment 2 akiko.mochizuki 2001-04-25 11:46:12 UTC
Created attachment 1243 [details]
The source code in English package.
Comment 3 akiko.mochizuki 2001-04-25 11:46:39 UTC
Created attachment 1244 [details]
The source code in Japanese package.
Comment 4 Svata Dedic 2001-04-25 15:32:32 UTC
It's impossible to fix this bug in NetBeans 3.2 (RC-4 build is scheduled 
tonight). The most probable cause is nonportable handling of Name objects in 
the netbeans-internal compiler bridge.

Comment 5 Tomas Hurka 2001-04-25 18:35:00 UTC
Problem found. We will check for the similar ones. Fix will be applied to the main trunk only.
Comment 6 Tomas Hurka 2001-05-07 13:36:48 UTC
Fixed in main trunk
Comment 7 Jan Becicka 2001-05-18 13:17:26 UTC
Akiko Mochizuki verified this fix on [010504_1] and [dev-181]
Comment 8 Jesse Glick 2002-12-23 16:35:58 UTC
Consistent use of the I18N keyword.
Comment 9 Quality Engineering 2003-07-01 13:15:47 UTC
Resolved for 3.4.x or earlier, no new info since then -> closing.