BUG: MSMQMessage getClass() unmappable Using JActiveX (196577)



The information in this article applies to:

  • Microsoft Message Queue Server (MSMQ) 1.0

This article was previously published under Q196577

SYMPTOMS

When generating Component Object Model (COM) wrapper classes for Microsoft Message Queue (MSMQ) J++ generates the following error comment in MSMQMessage.java:
   // getClass UNMAPPABLE: Name is a keyword or conflicts with another
      member.
   // public int getClass();
					

CAUSE

This occurs because getClass() is a method of the Class class and therefore the typelib generator will not generate this function.

RESOLUTION

Following are two methods you can use to resolve this error:

Add the following code to IMSMQMessage.java:
     /** @com.method(vtoffset=4, dispid=7, type=PROPGET, name="Class",
     name2="getClass")
     @com.parameters([type=I4] return) */ 
     public int getMsgClass();
				
Add the following code to MSMQMessage.java:
      // getClass UNMAPPABLE: Name is a keyword or conflicts with another
         member.
      // public native int getClass();
      // /** @com.method() */ 
      public native int getMsgClass();
				

STATUS

Microsoft has confirmed this to be a bug in the Microsoft products listed at the beginning of this article.

MORE INFORMATION

Steps to Reproduce Behavior

Microsoft Visual J++ 1.x:
From the Tools menu, select the Java Type Library Wizard and then import MSMQ.

For Visual J++ 6.x:
From the Project menu, select Add COM Wrapper and then import MSMQ.

Modification Type:MajorLast Reviewed:1/14/2000
Keywords:kbbug KB196577