Re: Error generating java stubs for mshtml

Andrew Gillett <[email protected]>
Newsgroups gmane.comp.windows.devel.jawin
Message-ID <[email protected]>
Thanks for your reply Josh.

Looking at the code, the problem is not an unsupported type.

The problem occurs in:
       int err = iTypeInfo.getRefTypeInfo(typeDesc.hreftype,
userDefinedType);
which returns a value of  80070057 (E_INVALIDARG).

The next line
       if (HRESULT.FAILED(err)) {
           throw new RuntimeException(new COMException(err).toString());
tests whether the MSB of err is set and throws the exception.

So the problem is occurring  in the call to ITypeInfo.getRefTypeInfo().
This is a native method, and I can only follow the logic as far as the
C++ wrapper, where the "err" value is set in
src/com/develop/jawin/win32/com_develop_jawin_win32_ITypeInfo.cpp, line 241:
       returnType=(jint)pTypeInfo->GetRefTypeInfo((long)hRefType,
&pRefTypeInfo);

So GetRefTypeInfo, which is a win32 library function, is returning the
E_INVALIDARG. Unfortunately, I can't tell what arguments are being
supplied. My next step will be to try and add some debug to get more
detailed info and build the package myself. But I was hoping someone
else might have tackled this before :)


Andrew



Josh Passenger wrote:

> Hi Andrew,
>
> The TypeParser class interfaces with a native dll that extracts type info
> from type libraries.
>
> AFAIK not all M$ types are currently supported, there are lots.
>
> Feel free to check out the line number in this file and add the type you
> need as a patch if you feel comfortable doing this.
>
> Josh
>
>> From: Andrew Gillett <[email protected]>
>> Reply-To: Discussion of Java/Win32/COM integration with Jawin
>> <[email protected]>
>> To: [email protected]
>> Subject: [JAWIN] Error generating java stubs for mshtml
>> Date: Sun, 10 Oct 2004 21:34:02 -0400
>> Received: from discuss.develop.com ([66.129.110.38]) by
>> mc1-f18.hotmail.com
>> with Microsoft SMTPSVC(5.0.2195.6824); Sun, 10 Oct 2004 19:04:56 -0700
>> Received: from develop-lserv (66.129.110.38) by discuss.develop.com
>> (LSMTP
>> for Windows NT v1.1b) with SMTP id <[email protected]>;
>> 10 Oct
>> 2004 21:49:04 -0400
>> Received: from DISCUSS.DEVELOP.COM by DISCUSS.DEVELOP.COM
>> (LISTSERV-TCP/IP
>>         release 1.8e) with spool id 794786 for
>> [email protected];
>>         Sun, 10 Oct 2004 21:49:03 -0400
>> Received: from develop-lserv (66.129.110.38) by discuss.develop.com
>> (LSMTP
>> for          Windows NT v1.1b) with SMTP id
>> <[email protected]>; 10          Oct 2004 21:34:02 -0400
>> X-Message-Info: vAu4ZEtdRigRXcfsE18Qdjm0mpuJ/Tcw
>> Message-ID:  <LISTSERV%[email protected]>
>> Precedence: list
>> Return-Path: [email protected]
>> X-OriginalArrivalTime: 11 Oct 2004 02:04:57.0943 (UTC)
>> FILETIME=[B5624E70:01C4AF36]
>>
>> Hi,
>>
>> I'm having trouble trying to generate the java stubs for IE6 in Windows
>> XP(SP2) using mshtml.tlb and jawin-1.0.19.
>>
>> It seem that an error is being generated in the native method,
>> ITypeInfo.getRefTypeInfo. The exception and stack trace are shown below.
>>
>> Can anyone suggest a way to resolve this problem?
>>
>>
>> Andrew
>>
>>
>>
>> Loaded TypeLibWrapper
>> Loaded TypeLibWrapper
>> [DEBUG] ********************************************
>> [DEBUG] TypeInfo GUID: GUID{3050f1c5 ffff98b5 11cf 00 00 00 00 00 00
>> 00 00
>> }
>> [DEBUG] TypeInfo Locale: 0
>> [DEBUG] TypeInfo Platform: 1
>> [DEBUG] TypeInfo Major version: 4
>> [DEBUG] TypeInfo Minor version: 0
>> [DEBUG] TypeInfo Flags: 8
>> Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException:
>> org.jawin.COMException: 80070057: null
>>         at
>> org.jawin.browser.typelib.TypeParser.buildUserDefinedDescription(TypeParser.java:921)
>>
>>         at
>> org.jawin.browser.typelib.TypeParser.buildTypeDescription(TypeParser.java:900)
>>
>>         at
>> org.jawin.browser.typelib.TypeParser.buildUserDefinedDescription(TypeParser.java:944)
>>
>>         at
>> org.jawin.browser.typelib.TypeParser.buildTypeDescription(TypeParser.java:900)
>>
>>         at
>> org.jawin.browser.typelib.TypeParser.buildTypeDescription(TypeParser.java:829)
>>
>>         at
>> org.jawin.browser.typelib.TypeParser.parseFuncDesc(TypeParser.java:322)
>>         at
>> org.jawin.browser.typelib.TypeParser.parseTypeInfo(TypeParser.java:166)
>>         at
>> org.jawin.browser.gui.TypeBrowserFrame.loadCurrentProjectLibraries(TypeBrowserFrame.java:551)
>>
>>         at
>> org.jawin.browser.gui.TypeBrowserFrame.editProjectProperties(TypeBrowserFrame.java:533)
>>
>>         at
>> org.jawin.browser.gui.TypeBrowserFrame.newProject(TypeBrowserFrame.java:591)
>>
>>         at
>> org.jawin.browser.gui.TypeBrowserFrame.access$200(TypeBrowserFrame.java:37)
>>
>>         at
>> org.jawin.browser.gui.TypeBrowserFrame$3.actionPerformed(TypeBrowserFrame.java:223)
>>
>>         at javax.swing.AbstractButton.fireActionPerformed(Unknown
>> Source)
>>         at javax.swing.AbstractButton$Handler.actionPerformed(Unknown
>> Source)
>>         at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown
>> Source)
>>         at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
>>         at
>> javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown
>> Source)
>>         at java.awt.AWTEventMulticaster.mouseReleased(Unknown Source)
>>         at java.awt.Component.processMouseEvent(Unknown Source)
>>         at javax.swing.JComponent.processMouseEvent(Unknown Source)
>>         at java.awt.Component.processEvent(Unknown Source)
>>         at java.awt.Container.processEvent(Unknown Source)
>>         at java.awt.Component.dispatchEventImpl(Unknown Source)
>>         at java.awt.Container.dispatchEventImpl(Unknown Source)
>>         at java.awt.Component.dispatchEvent(Unknown Source)
>>         at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown
>> Source)
>>         at java.awt.LightweightDispatcher.processMouseEvent(Unknown
>> Source)
>>         at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
>>         at java.awt.Container.dispatchEventImpl(Unknown Source)
>>         at java.awt.Window.dispatchEventImpl(Unknown Source)
>>         at java.awt.Component.dispatchEvent(Unknown Source)
>>         at java.awt.EventQueue.dispatchEvent(Unknown Source)
>>         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(Unknown
>> Source)
>>         at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown
>> Source)
>>         at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>>         at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
>>         at java.awt.EventDispatchThread.run(Unknown Source)
>
>
> _________________________________________________________________
> Discover how everyone & everything in our world's connected:
> http://www.onebigvillage.com.au?&obv1=hotmail
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.