You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@beehive.apache.org by James Black <jb...@ieee.org> on 2005/02/17 17:44:26 UTC

re: .net implementation from wsdl cannot be reflected

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

I am using a version of beehive from last Friday, and I don't know why I
would be getting this error from NUnit, testing my C# client.

BlackboardClient.test.TestGetClassEnrollment :
System.InvalidOperationException : Method
BlackboardService.getGradesByCourse can not be reflected.
~  ----> System.InvalidOperationException : There was an error reflecting
'getGradesByCourseResult'.
~  ----> System.InvalidOperationException : There was an error reflecting
type 'BlackboardClient.edu.usf.acomp.webservice.blackboard.UserGrades'.
~  ----> System.InvalidOperationException : There was an error reflecting
field 'grades'.
~  ----> System.InvalidOperationException : The XML element named 'item'
from namespace 'http://localhost/ws_test' references distinct types
BlackboardClient.edu.usf.acomp.webservice.blackboard.MessageBean and
BlackboardClient.edu.usf.acomp.webservice.blackboard.UserGradeItem. Use
XML attributes to specify another XML name or namespace for the element
or types.

~  The java client unit test works fine considering that I am passing in
invalid values to my webservice.

~  My wsdl file is at:
http://dante.acomp.usf.edu:8080/ws_test/Blackboard.jws?wsdl

~  Any suggestions would be helpful, as I believe there is a problem with
the wsdl generation.

- --
"Love is mutual self-giving that ends in self-recovery." Fulton Sheen
James Black    james@usf.edu
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.5 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFCFMnqikQgpVn8xrARAtSEAJ9Wc737Q0nVE5NTuvT+mvgnnqAZuQCZAZGT
CKxGSXashuT/w/YtZscnxv0=
=fU4R
-----END PGP SIGNATURE-----

Re: .net implementation from wsdl cannot be reflected

Posted by James Black <jb...@ieee.org>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Jongjin Choi wrote:
| Oops.. I forgot the modified wsdl.
|
| ----- Original Message -----
| From: "Jongjin Choi" <gu...@hotmail.com>
| To: "Beehive Users" <be...@incubator.apache.org>
| Sent: Friday, February 18, 2005 3:40 AM
| Subject: Re: .net implementation from wsdl cannot be reflected
|
|
|
|>Hi, James.
|>
|>I tested your wsdl from .NET 1.1.
|>
|>First, I modified your wsdl as attached.
|>The changes are :
|>- make tns2 namespace as http://data.blackboard.acomp.usf.edu in
<definition>
|>- merge shema definition of http://data.blackboard.acomp.usf.edu and
http://localhost/ws_test
|>  as http://data.blackboard.acomp.usf.edu
|>(see attached wsdl)
|>
|>Then generate .NET stub class using wsdl.exe

~  You should get the error message you saw, actually, as these
operations are only allowed by instructors, in most cases. :)

~  How would I go about filling out a bug report on this, as I started
but the title is now incorrect:
http://issues.apache.org/jira/browse/BEEHIVE-300

~  The nullpointer problem was caused by some missing jar files, but the
.net has been failing the whole time also, and my description shows that
the wsdl file is incorrect.

~  I am about to change my beehive impl from doc/lit to rpc/enc, as I
have problems with axis using doc/lit, just so the two wsdl file
differences can be seen.


- --
"Love is mutual self-giving that ends in self-recovery." Fulton Sheen
James Black    james@usf.edu
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.5 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFCFPf/ikQgpVn8xrARAhVeAJ9PDZmRh6lSYynj7jCNz7X8CFI2+ACdE4uj
M8S/hhhSOZrWX0QTkO6J8NY=
=Zwof
-----END PGP SIGNATURE-----

Re: .net implementation from wsdl cannot be reflected

Posted by Jongjin Choi <gu...@hotmail.com>.
Hmm.. The attachment seems not be permitted in this list.
The modified (long) wsdl is below:

------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<wsdl:definitions targetNamespace="http://dante.acomp.usf.edu:8080/ws_test" xmlns:apachesoap="http://xml.apache.org/xml-soap" xmlns:impl="http://dante.acomp.usf.edu:8080/ws_test" xmlns:intf="http://dante.acomp.usf.edu:8080/ws_test" xmlns:tns1="http://data.blackboard.acomp.usf.edu" xmlns:tns2="http://data.blackboard.acomp.usf.edu" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsdlsoap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!--WSDL created by Apache Axis version: 1.2RC2
Built on Nov 16, 2004 (12:19:44 EST)-->
 <wsdl:types>
  <schema elementFormDefault="qualified" targetNamespace="http://dante.acomp.usf.edu:8080/ws_test" xmlns="http://www.w3.org/2001/XMLSchema">
   <import namespace="http://data.blackboard.acomp.usf.edu"/>
   <import namespace="http://localhost/ws_test"/>
   <element name="getGradesByCourseStr">
    <complexType>
     <sequence>
      <element name="username" type="xsd:string"/>
      <element name="password" type="xsd:string"/>
      <element name="courseBatchUid" type="xsd:string"/>
     </sequence>
    </complexType>
   </element>
   <element name="getGradesByCourseStrResponse">
    <complexType>
     <sequence>
      <element name="result" type="xsd:int"/>
      <element name="grades" type="xsd:string"/>
     </sequence>
    </complexType>
   </element>
   <element name="getDBMessagesByGroupTitle">
    <complexType>
     <sequence>
      <element name="username" type="xsd:string"/>
      <element name="password" type="xsd:string"/>
      <element name="courseBatchUid" type="xsd:string"/>
      <element name="groupTitle" type="xsd:string"/>
     </sequence>
    </complexType>
   </element>
   <element name="getDBMessagesByGroupTitleResponse">
    <complexType>
     <sequence>
      <element maxOccurs="unbounded" name="result" type="tns1:ForumBean"/>
     </sequence>
    </complexType>
   </element>
   <element name="getClassEnrollment">
    <complexType>
     <sequence>
      <element name="username" type="xsd:string"/>
      <element name="password" type="xsd:string"/>
      <element name="courseBatchUid" type="xsd:string"/>
     </sequence>
    </complexType>
   </element>
   <element name="getClassEnrollmentResponse">
    <complexType>
     <sequence>
      <element maxOccurs="unbounded" name="result" type="tns1:ClassEnrollment"/>
     </sequence>
    </complexType>
   </element>
   <element name="changeNetidAndEmail">
    <complexType>
     <sequence>
      <element name="username" type="xsd:string"/>
      <element name="password" type="xsd:string"/>
      <element name="netid" type="xsd:string"/>
      <element name="email" type="xsd:string"/>
      <element name="pidm" type="xsd:string"/>
     </sequence>
    </complexType>
   </element>
   <element name="changeNetidAndEmailResponse">
    <complexType/>
   </element>
   <element name="getDBMessagesByCourseName">
    <complexType>
     <sequence>
      <element name="username" type="xsd:string"/>
      <element name="password" type="xsd:string"/>
      <element name="courseBatchUid" type="xsd:string"/>
     </sequence>
    </complexType>
   </element>
   <element name="getDBMessagesByCourseNameResponse">
    <complexType>
     <sequence>
      <element maxOccurs="unbounded" name="result" type="tns1:ForumBean"/>
     </sequence>
    </complexType>
   </element>
   <element name="getGradeDefinitionsByCourse">
    <complexType>
     <sequence>
      <element name="username" type="xsd:string"/>
      <element name="password" type="xsd:string"/>
      <element name="courseBatchUid" type="xsd:string"/>
     </sequence>
    </complexType>
   </element>
   <element name="getGradeDefinitionsByCourseResponse">
    <complexType>
     <sequence>
      <element maxOccurs="unbounded" name="result" type="tns1:GradeDefinition"/>
     </sequence>
    </complexType>
   </element>
   <element name="getGradesByCourse">
    <complexType>
     <sequence>
      <element name="username" type="xsd:string"/>
      <element name="password" type="xsd:string"/>
      <element name="courseBatchUid" type="xsd:string"/>
     </sequence>
    </complexType>
   </element>
   <element name="getGradesByCourseResponse">
    <complexType>
     <sequence>
      <element maxOccurs="unbounded" name="result" type="tns1:UserGrades"/>
     </sequence>
    </complexType>
   </element>
   <element name="changeNetid">
    <complexType>
     <sequence>
      <element name="username" type="xsd:string"/>
      <element name="password" type="xsd:string"/>
      <element name="netid" type="xsd:string"/>
      <element name="pidm" type="xsd:string"/>
     </sequence>
    </complexType>
   </element>
   <element name="changeNetidResponse">
    <complexType/>
   </element>
   <element name="changeEmail">
    <complexType>
     <sequence>
      <element name="username" type="xsd:string"/>
      <element name="password" type="xsd:string"/>
      <element name="netid" type="xsd:string"/>
      <element name="pidm" type="xsd:string"/>
     </sequence>
    </complexType>
   </element>
   <element name="changeEmailResponse">
    <complexType/>
   </element>
  </schema>
  <schema elementFormDefault="qualified" targetNamespace="http://data.blackboard.acomp.usf.edu" xmlns="http://www.w3.org/2001/XMLSchema">
   <import namespace="http://localhost/ws_test"/>
   <complexType name="MessageBean">
    <sequence>
     <element name="attachmentExists" type="xsd:boolean"/>
     <element name="author" nillable="true" type="xsd:string"/>
     <element name="messageUrl" nillable="true" type="xsd:string"/>
     <element name="newMessage" type="xsd:boolean"/>
     <element name="responses" nillable="true" type="tns2:ArrayOf_tns1_MessageBean"/>
     <element name="subject" nillable="true" type="xsd:string"/>
     <element name="text" nillable="true" type="xsd:string"/>
     <element name="timeModified" nillable="true" type="xsd:string"/>
    </sequence>
   </complexType>
   <complexType name="ForumBean">
    <sequence>
     <element name="messages" nillable="true" type="tns2:ArrayOf_tns1_MessageBean"/>
     <element name="name" nillable="true" type="xsd:string"/>
    </sequence>
   </complexType>
   <complexType name="ClassEnrollment">
    <sequence>
     <element name="membershipType" nillable="true" type="xsd:string"/>
     <element name="membershipTypeNum" type="xsd:int"/>
     <element name="name" nillable="true" type="xsd:string"/>
     <element name="netid" nillable="true" type="xsd:string"/>
    </sequence>
   </complexType>
   <complexType name="GradeDefinition">
    <sequence>
     <element name="categoryType" nillable="true" type="xsd:string"/>
     <element name="name" nillable="true" type="xsd:string"/>
     <element name="pointsPossible" type="xsd:float"/>
     <element name="weight" type="xsd:float"/>
    </sequence>
   </complexType>
   <complexType name="UserGradeItem">
    <sequence>
     <element name="pointPossible" type="xsd:float"/>
     <element name="score" type="xsd:float"/>
     <element name="weightedScore" type="xsd:float"/>
    </sequence>
   </complexType>
   <complexType name="UserGrades">
    <sequence>
     <element name="courseBatchUid" nillable="true" type="xsd:string"/>
     <element name="courseMembershipIdStr" nillable="true" type="xsd:string"/>
     <element maxOccurs="unbounded" name="grade" nillable="true" type="tns1:UserGradeItem"/>
     <element name="grades" nillable="true" type="tns2:ArrayOf_tns1_UserGradeItem"/>
     <element name="listItems" nillable="true" type="tns2:ArrayOf_xsd_string"/>
     <element name="totalPointsPossible" type="xsd:float"/>
     <element name="userBatchUid" nillable="true" type="xsd:string"/>
    </sequence>
</complexType>
<!--
  </schema>
  <schema elementFormDefault="qualified" targetNamespace="http://localhost/ws_test" xmlns="http://www.w3.org/2001/XMLSchema">
   <import namespace="http://data.blackboard.acomp.usf.edu"/>
   -->
   <complexType name="ArrayOf_tns1_MessageBean">
    <sequence>
     <element maxOccurs="unbounded" minOccurs="0" name="item" nillable="true" type="tns1:MessageBean"/>
    </sequence>
   </complexType>
   <complexType name="ArrayOf_tns1_UserGradeItem">
    <sequence>
     <element maxOccurs="unbounded" minOccurs="0" name="item" nillable="true" type="tns1:UserGradeItem"/>
    </sequence>
   </complexType>
   <complexType name="ArrayOf_xsd_string">
    <sequence>
     <element maxOccurs="unbounded" minOccurs="0" name="item" nillable="true" type="xsd:string"/>
    </sequence>
   </complexType>
  </schema>
 </wsdl:types>

   <wsdl:message name="changeEmailResponse">

      <wsdl:part element="impl:changeEmailResponse" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="getGradeDefinitionsByCourseResponse">

      <wsdl:part element="impl:getGradeDefinitionsByCourseResponse" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="EpicException">

   </wsdl:message>

   <wsdl:message name="getGradesByCourseResponse">

      <wsdl:part element="impl:getGradesByCourseResponse" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="getDBMessagesByCourseNameRequest">

      <wsdl:part element="impl:getDBMessagesByCourseName" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="getClassEnrollmentResponse">

      <wsdl:part element="impl:getClassEnrollmentResponse" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="getClassEnrollmentRequest">

      <wsdl:part element="impl:getClassEnrollment" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="getGradeDefinitionsByCourseRequest">

      <wsdl:part element="impl:getGradeDefinitionsByCourse" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="changeNetidAndEmailResponse">

      <wsdl:part element="impl:changeNetidAndEmailResponse" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="getGradesByCourseRequest">

      <wsdl:part element="impl:getGradesByCourse" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="getDBMessagesByGroupTitleRequest">

      <wsdl:part element="impl:getDBMessagesByGroupTitle" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="getDBMessagesByCourseNameResponse">

      <wsdl:part element="impl:getDBMessagesByCourseNameResponse" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="getGradesByCourseStrResponse">

      <wsdl:part element="impl:getGradesByCourseStrResponse" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="changeEmailRequest">

      <wsdl:part element="impl:changeEmail" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="getDBMessagesByGroupTitleResponse">

      <wsdl:part element="impl:getDBMessagesByGroupTitleResponse" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="changeNetidRequest">

      <wsdl:part element="impl:changeNetid" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="changeNetidAndEmailRequest">

      <wsdl:part element="impl:changeNetidAndEmail" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="getGradesByCourseStrRequest">

      <wsdl:part element="impl:getGradesByCourseStr" name="parameters"/>

   </wsdl:message>

   <wsdl:message name="changeNetidResponse">

      <wsdl:part element="impl:changeNetidResponse" name="parameters"/>

   </wsdl:message>

   <wsdl:portType name="Blackboard">

      <wsdl:operation name="getGradesByCourseStr">

         <wsdl:input message="impl:getGradesByCourseStrRequest" name="getGradesByCourseStrRequest"/>

         <wsdl:output message="impl:getGradesByCourseStrResponse" name="getGradesByCourseStrResponse"/>

         <wsdl:fault message="impl:EpicException" name="EpicException"/>

      </wsdl:operation>

      <wsdl:operation name="getDBMessagesByGroupTitle">

         <wsdl:input message="impl:getDBMessagesByGroupTitleRequest" name="getDBMessagesByGroupTitleRequest"/>

         <wsdl:output message="impl:getDBMessagesByGroupTitleResponse" name="getDBMessagesByGroupTitleResponse"/>

         <wsdl:fault message="impl:EpicException" name="EpicException"/>

      </wsdl:operation>

      <wsdl:operation name="getClassEnrollment">

         <wsdl:input message="impl:getClassEnrollmentRequest" name="getClassEnrollmentRequest"/>

         <wsdl:output message="impl:getClassEnrollmentResponse" name="getClassEnrollmentResponse"/>

         <wsdl:fault message="impl:EpicException" name="EpicException"/>

      </wsdl:operation>

      <wsdl:operation name="changeNetidAndEmail">

         <wsdl:input message="impl:changeNetidAndEmailRequest" name="changeNetidAndEmailRequest"/>

         <wsdl:output message="impl:changeNetidAndEmailResponse" name="changeNetidAndEmailResponse"/>

         <wsdl:fault message="impl:EpicException" name="EpicException"/>

      </wsdl:operation>

      <wsdl:operation name="getDBMessagesByCourseName">

         <wsdl:input message="impl:getDBMessagesByCourseNameRequest" name="getDBMessagesByCourseNameRequest"/>

         <wsdl:output message="impl:getDBMessagesByCourseNameResponse" name="getDBMessagesByCourseNameResponse"/>

         <wsdl:fault message="impl:EpicException" name="EpicException"/>

      </wsdl:operation>

      <wsdl:operation name="getGradeDefinitionsByCourse">

         <wsdl:input message="impl:getGradeDefinitionsByCourseRequest" name="getGradeDefinitionsByCourseRequest"/>

         <wsdl:output message="impl:getGradeDefinitionsByCourseResponse" name="getGradeDefinitionsByCourseResponse"/>

         <wsdl:fault message="impl:EpicException" name="EpicException"/>

      </wsdl:operation>

      <wsdl:operation name="getGradesByCourse">

         <wsdl:input message="impl:getGradesByCourseRequest" name="getGradesByCourseRequest"/>

         <wsdl:output message="impl:getGradesByCourseResponse" name="getGradesByCourseResponse"/>

         <wsdl:fault message="impl:EpicException" name="EpicException"/>

      </wsdl:operation>

      <wsdl:operation name="changeNetid">

         <wsdl:input message="impl:changeNetidRequest" name="changeNetidRequest"/>

         <wsdl:output message="impl:changeNetidResponse" name="changeNetidResponse"/>

         <wsdl:fault message="impl:EpicException" name="EpicException"/>

      </wsdl:operation>

      <wsdl:operation name="changeEmail">

         <wsdl:input message="impl:changeEmailRequest" name="changeEmailRequest"/>

         <wsdl:output message="impl:changeEmailResponse" name="changeEmailResponse"/>

         <wsdl:fault message="impl:EpicException" name="EpicException"/>

      </wsdl:operation>

   </wsdl:portType>

   <wsdl:binding name="BlackboardSoapBinding" type="impl:Blackboard">

      <wsdlsoap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>

      <wsdl:operation name="getGradesByCourseStr">

         <wsdlsoap:operation soapAction=""/>

         <wsdl:input name="getGradesByCourseStrRequest">

            <wsdlsoap:body use="literal"/>

         </wsdl:input>

         <wsdl:output name="getGradesByCourseStrResponse">

            <wsdlsoap:body use="literal"/>

         </wsdl:output>

         <wsdl:fault name="EpicException">

            <wsdlsoap:fault name="EpicException" use="literal"/>

         </wsdl:fault>

      </wsdl:operation>

      <wsdl:operation name="getDBMessagesByGroupTitle">

         <wsdlsoap:operation soapAction=""/>

         <wsdl:input name="getDBMessagesByGroupTitleRequest">

            <wsdlsoap:body use="literal"/>

         </wsdl:input>

         <wsdl:output name="getDBMessagesByGroupTitleResponse">

            <wsdlsoap:body use="literal"/>

         </wsdl:output>

         <wsdl:fault name="EpicException">

            <wsdlsoap:fault name="EpicException" use="literal"/>

         </wsdl:fault>

      </wsdl:operation>

      <wsdl:operation name="getClassEnrollment">

         <wsdlsoap:operation soapAction=""/>

         <wsdl:input name="getClassEnrollmentRequest">

            <wsdlsoap:body use="literal"/>

         </wsdl:input>

         <wsdl:output name="getClassEnrollmentResponse">

            <wsdlsoap:body use="literal"/>

         </wsdl:output>

         <wsdl:fault name="EpicException">

            <wsdlsoap:fault name="EpicException" use="literal"/>

         </wsdl:fault>

      </wsdl:operation>

      <wsdl:operation name="changeNetidAndEmail">

         <wsdlsoap:operation soapAction=""/>

         <wsdl:input name="changeNetidAndEmailRequest">

            <wsdlsoap:body use="literal"/>

         </wsdl:input>

         <wsdl:output name="changeNetidAndEmailResponse">

            <wsdlsoap:body use="literal"/>

         </wsdl:output>

         <wsdl:fault name="EpicException">

            <wsdlsoap:fault name="EpicException" use="literal"/>

         </wsdl:fault>

      </wsdl:operation>

      <wsdl:operation name="getDBMessagesByCourseName">

         <wsdlsoap:operation soapAction=""/>

         <wsdl:input name="getDBMessagesByCourseNameRequest">

            <wsdlsoap:body use="literal"/>

         </wsdl:input>

         <wsdl:output name="getDBMessagesByCourseNameResponse">

            <wsdlsoap:body use="literal"/>

         </wsdl:output>

         <wsdl:fault name="EpicException">

            <wsdlsoap:fault name="EpicException" use="literal"/>

         </wsdl:fault>

      </wsdl:operation>

      <wsdl:operation name="getGradeDefinitionsByCourse">

         <wsdlsoap:operation soapAction=""/>

         <wsdl:input name="getGradeDefinitionsByCourseRequest">

            <wsdlsoap:body use="literal"/>

         </wsdl:input>

         <wsdl:output name="getGradeDefinitionsByCourseResponse">

            <wsdlsoap:body use="literal"/>

         </wsdl:output>

         <wsdl:fault name="EpicException">

            <wsdlsoap:fault name="EpicException" use="literal"/>

         </wsdl:fault>

      </wsdl:operation>

      <wsdl:operation name="getGradesByCourse">

         <wsdlsoap:operation soapAction=""/>

         <wsdl:input name="getGradesByCourseRequest">

            <wsdlsoap:body use="literal"/>

         </wsdl:input>

         <wsdl:output name="getGradesByCourseResponse">

            <wsdlsoap:body use="literal"/>

         </wsdl:output>

         <wsdl:fault name="EpicException">

            <wsdlsoap:fault name="EpicException" use="literal"/>

         </wsdl:fault>

      </wsdl:operation>

      <wsdl:operation name="changeNetid">

         <wsdlsoap:operation soapAction=""/>

         <wsdl:input name="changeNetidRequest">

            <wsdlsoap:body use="literal"/>

         </wsdl:input>

         <wsdl:output name="changeNetidResponse">

            <wsdlsoap:body use="literal"/>

         </wsdl:output>

         <wsdl:fault name="EpicException">

            <wsdlsoap:fault name="EpicException" use="literal"/>

         </wsdl:fault>

      </wsdl:operation>

      <wsdl:operation name="changeEmail">

         <wsdlsoap:operation soapAction=""/>

         <wsdl:input name="changeEmailRequest">

            <wsdlsoap:body use="literal"/>

         </wsdl:input>

         <wsdl:output name="changeEmailResponse">

            <wsdlsoap:body use="literal"/>

         </wsdl:output>

         <wsdl:fault name="EpicException">

            <wsdlsoap:fault name="EpicException" use="literal"/>

         </wsdl:fault>

      </wsdl:operation>

   </wsdl:binding>

   <wsdl:service name="BlackboardService">

      <wsdl:port binding="impl:BlackboardSoapBinding" name="Blackboard">

         <wsdlsoap:address location="http://dante.acomp.usf.edu:8080/ws_test/Blackboard.jws"/>

      </wsdl:port>

   </wsdl:service>

</wsdl:definitions>
--------------------------




----- Original Message ----- 
From: "Jongjin Choi" <gu...@hotmail.com>
To: "Beehive Users" <be...@incubator.apache.org>
Sent: Friday, February 18, 2005 3:43 AM
Subject: Re: .net implementation from wsdl cannot be reflected


> Oops.. I forgot the modified wsdl.
> 
> ----- Original Message ----- 
> From: "Jongjin Choi" <gu...@hotmail.com>
> To: "Beehive Users" <be...@incubator.apache.org>
> Sent: Friday, February 18, 2005 3:40 AM
> Subject: Re: .net implementation from wsdl cannot be reflected
> 
> 
>> Hi, James.
>> 
>> I tested your wsdl from .NET 1.1.
>> 
>> First, I modified your wsdl as attached.
>> The changes are :
>> - make tns2 namespace as http://data.blackboard.acomp.usf.edu in <definition>
>> - merge shema definition of http://data.blackboard.acomp.usf.edu and http://localhost/ws_test
>>   as http://data.blackboard.acomp.usf.edu
>> (see attached wsdl)
>> 
>> Then generate .NET stub class using wsdl.exe
>> 
>> And the test program I wrote  (in C#)
>> ------------------------
>> using System;
>> 
>> namespace Test1
>> {
>>    class TestClient 
>>    {
>>        static void Main(string[] args) 
>>        {
>>            TestClient client = new TestClient();
>>            client.run();
>>        }
>>        
>>        private void run() 
>>        {
>>            BlackboardService service = new BlackboardService();
>>            UserGrades[] grades = service.getGradesByCourse("guest", "guest", "001");
>>        }
>>    }
>> }
>> ---------------------------
>> 
>> Then run the compiled TestClient.exe, the result is : 
>> 
>> Unhandled Exception: System.Web.Services.Protocols.SoapException: edu.usf.acomp.
>> epic.EpicException: Only instructors can do this operation, and guest is not an
>> instructor for course 001
>>   at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClie
>> ntMessage message, WebResponse response, Stream responseStream, Boolean asyncCal
>> l)
>>   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodN
>> ame, Object[] parameters)
>>   at BlackboardService.getGradesByCourse(String username, String password, Stri
>> ng courseBatchUid)
>>   at Test1.TestClient.Main(String[] args)
>> 
>> The soap fault message is returned from your web service.
>> 
>> Is this what you expected?
>> 
>> I think the wsdl and schema is not valid and .NET can not handle the schema from beehive/axis.
>> But to improve .NET interop, it is better to generate a wsdl that .NET can  manage.
>> 
>> Can you give the jws and other java files or a simplified test case to reproduce this?
>> 
>> 
>> ----- Original Message ----- 
>> From: "James Black" <jb...@ieee.org>
>> To: "Beehive Users" <be...@incubator.apache.org>
>> Sent: Friday, February 18, 2005 1:44 AM
>> Subject: re: .net implementation from wsdl cannot be reflected
>> 
>> 
>>> -----BEGIN PGP SIGNED MESSAGE-----
>>> Hash: SHA1
>>> 
>>> I am using a version of beehive from last Friday, and I don't know why I
>>> would be getting this error from NUnit, testing my C# client.
>>> 
>>> BlackboardClient.test.TestGetClassEnrollment :
>>> System.InvalidOperationException : Method
>>> BlackboardService.getGradesByCourse can not be reflected.
>>> ~  ----> System.InvalidOperationException : There was an error reflecting
>>> 'getGradesByCourseResult'.
>>> ~  ----> System.InvalidOperationException : There was an error reflecting
>>> type 'BlackboardClient.edu.usf.acomp.webservice.blackboard.UserGrades'.
>>> ~  ----> System.InvalidOperationException : There was an error reflecting
>>> field 'grades'.
>>> ~  ----> System.InvalidOperationException : The XML element named 'item'
>>> from namespace 'http://localhost/ws_test' references distinct types
>>> BlackboardClient.edu.usf.acomp.webservice.blackboard.MessageBean and
>>> BlackboardClient.edu.usf.acomp.webservice.blackboard.UserGradeItem. Use
>>> XML attributes to specify another XML name or namespace for the element
>>> or types.
>>> 
>>> ~  The java client unit test works fine considering that I am passing in
>>> invalid values to my webservice.
>>> 
>>> ~  My wsdl file is at:
>>> http://dante.acomp.usf.edu:8080/ws_test/Blackboard.jws?wsdl
>>> 
>>> ~  Any suggestions would be helpful, as I believe there is a problem with
>>> the wsdl generation.
>>> 
>>> - --
>>> "Love is mutual self-giving that ends in self-recovery." Fulton Sheen
>>> James Black    james@usf.edu
>>> -----BEGIN PGP SIGNATURE-----
>>> Version: GnuPG v1.2.5 (MingW32)
>>> Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
>>> 
>>> iD8DBQFCFMnqikQgpVn8xrARAtSEAJ9Wc737Q0nVE5NTuvT+mvgnnqAZuQCZAZGT
>>> CKxGSXashuT/w/YtZscnxv0=
>>> =fU4R
>>> -----END PGP SIGNATURE-----
>>>

Re: .net implementation from wsdl cannot be reflected

Posted by Jongjin Choi <gu...@hotmail.com>.
Oops.. I forgot the modified wsdl.

----- Original Message ----- 
From: "Jongjin Choi" <gu...@hotmail.com>
To: "Beehive Users" <be...@incubator.apache.org>
Sent: Friday, February 18, 2005 3:40 AM
Subject: Re: .net implementation from wsdl cannot be reflected


> Hi, James.
> 
> I tested your wsdl from .NET 1.1.
> 
> First, I modified your wsdl as attached.
> The changes are :
> - make tns2 namespace as http://data.blackboard.acomp.usf.edu in <definition>
> - merge shema definition of http://data.blackboard.acomp.usf.edu and http://localhost/ws_test
>   as http://data.blackboard.acomp.usf.edu
> (see attached wsdl)
> 
> Then generate .NET stub class using wsdl.exe
> 
> And the test program I wrote  (in C#)
> ------------------------
> using System;
> 
> namespace Test1
> {
>    class TestClient 
>    {
>        static void Main(string[] args) 
>        {
>            TestClient client = new TestClient();
>            client.run();
>        }
>        
>        private void run() 
>        {
>            BlackboardService service = new BlackboardService();
>            UserGrades[] grades = service.getGradesByCourse("guest", "guest", "001");
>        }
>    }
> }
> ---------------------------
> 
> Then run the compiled TestClient.exe, the result is : 
> 
> Unhandled Exception: System.Web.Services.Protocols.SoapException: edu.usf.acomp.
> epic.EpicException: Only instructors can do this operation, and guest is not an
> instructor for course 001
>   at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClie
> ntMessage message, WebResponse response, Stream responseStream, Boolean asyncCal
> l)
>   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodN
> ame, Object[] parameters)
>   at BlackboardService.getGradesByCourse(String username, String password, Stri
> ng courseBatchUid)
>   at Test1.TestClient.Main(String[] args)
> 
> The soap fault message is returned from your web service.
> 
> Is this what you expected?
> 
> I think the wsdl and schema is not valid and .NET can not handle the schema from beehive/axis.
> But to improve .NET interop, it is better to generate a wsdl that .NET can  manage.
> 
> Can you give the jws and other java files or a simplified test case to reproduce this?
> 
> 
> ----- Original Message ----- 
> From: "James Black" <jb...@ieee.org>
> To: "Beehive Users" <be...@incubator.apache.org>
> Sent: Friday, February 18, 2005 1:44 AM
> Subject: re: .net implementation from wsdl cannot be reflected
> 
> 
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA1
>> 
>> I am using a version of beehive from last Friday, and I don't know why I
>> would be getting this error from NUnit, testing my C# client.
>> 
>> BlackboardClient.test.TestGetClassEnrollment :
>> System.InvalidOperationException : Method
>> BlackboardService.getGradesByCourse can not be reflected.
>> ~  ----> System.InvalidOperationException : There was an error reflecting
>> 'getGradesByCourseResult'.
>> ~  ----> System.InvalidOperationException : There was an error reflecting
>> type 'BlackboardClient.edu.usf.acomp.webservice.blackboard.UserGrades'.
>> ~  ----> System.InvalidOperationException : There was an error reflecting
>> field 'grades'.
>> ~  ----> System.InvalidOperationException : The XML element named 'item'
>> from namespace 'http://localhost/ws_test' references distinct types
>> BlackboardClient.edu.usf.acomp.webservice.blackboard.MessageBean and
>> BlackboardClient.edu.usf.acomp.webservice.blackboard.UserGradeItem. Use
>> XML attributes to specify another XML name or namespace for the element
>> or types.
>> 
>> ~  The java client unit test works fine considering that I am passing in
>> invalid values to my webservice.
>> 
>> ~  My wsdl file is at:
>> http://dante.acomp.usf.edu:8080/ws_test/Blackboard.jws?wsdl
>> 
>> ~  Any suggestions would be helpful, as I believe there is a problem with
>> the wsdl generation.
>> 
>> - --
>> "Love is mutual self-giving that ends in self-recovery." Fulton Sheen
>> James Black    james@usf.edu
>> -----BEGIN PGP SIGNATURE-----
>> Version: GnuPG v1.2.5 (MingW32)
>> Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
>> 
>> iD8DBQFCFMnqikQgpVn8xrARAtSEAJ9Wc737Q0nVE5NTuvT+mvgnnqAZuQCZAZGT
>> CKxGSXashuT/w/YtZscnxv0=
>> =fU4R
>> -----END PGP SIGNATURE-----
>>

Re: .net implementation from wsdl cannot be reflected

Posted by Jongjin Choi <gu...@hotmail.com>.
Hi, James.

I tested your wsdl from .NET 1.1.

First, I modified your wsdl as attached.
The changes are :
 - make tns2 namespace as http://data.blackboard.acomp.usf.edu in <definition>
 - merge shema definition of http://data.blackboard.acomp.usf.edu and http://localhost/ws_test
   as http://data.blackboard.acomp.usf.edu
(see attached wsdl)

Then generate .NET stub class using wsdl.exe

And the test program I wrote  (in C#)
------------------------
using System;

namespace Test1
{
    class TestClient 
    {
        static void Main(string[] args) 
        {
            TestClient client = new TestClient();
            client.run();
        }
        
        private void run() 
        {
            BlackboardService service = new BlackboardService();
            UserGrades[] grades = service.getGradesByCourse("guest", "guest", "001");
        }
    }
}
---------------------------

Then run the compiled TestClient.exe, the result is : 

Unhandled Exception: System.Web.Services.Protocols.SoapException: edu.usf.acomp.
epic.EpicException: Only instructors can do this operation, and guest is not an
instructor for course 001
   at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClie
ntMessage message, WebResponse response, Stream responseStream, Boolean asyncCal
l)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodN
ame, Object[] parameters)
   at BlackboardService.getGradesByCourse(String username, String password, Stri
ng courseBatchUid)
   at Test1.TestClient.Main(String[] args)

The soap fault message is returned from your web service.

Is this what you expected?

I think the wsdl and schema is not valid and .NET can not handle the schema from beehive/axis.
But to improve .NET interop, it is better to generate a wsdl that .NET can  manage.

Can you give the jws and other java files or a simplified test case to reproduce this?


----- Original Message ----- 
From: "James Black" <jb...@ieee.org>
To: "Beehive Users" <be...@incubator.apache.org>
Sent: Friday, February 18, 2005 1:44 AM
Subject: re: .net implementation from wsdl cannot be reflected


> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
> 
> I am using a version of beehive from last Friday, and I don't know why I
> would be getting this error from NUnit, testing my C# client.
> 
> BlackboardClient.test.TestGetClassEnrollment :
> System.InvalidOperationException : Method
> BlackboardService.getGradesByCourse can not be reflected.
> ~  ----> System.InvalidOperationException : There was an error reflecting
> 'getGradesByCourseResult'.
> ~  ----> System.InvalidOperationException : There was an error reflecting
> type 'BlackboardClient.edu.usf.acomp.webservice.blackboard.UserGrades'.
> ~  ----> System.InvalidOperationException : There was an error reflecting
> field 'grades'.
> ~  ----> System.InvalidOperationException : The XML element named 'item'
> from namespace 'http://localhost/ws_test' references distinct types
> BlackboardClient.edu.usf.acomp.webservice.blackboard.MessageBean and
> BlackboardClient.edu.usf.acomp.webservice.blackboard.UserGradeItem. Use
> XML attributes to specify another XML name or namespace for the element
> or types.
> 
> ~  The java client unit test works fine considering that I am passing in
> invalid values to my webservice.
> 
> ~  My wsdl file is at:
> http://dante.acomp.usf.edu:8080/ws_test/Blackboard.jws?wsdl
> 
> ~  Any suggestions would be helpful, as I believe there is a problem with
> the wsdl generation.
> 
> - --
> "Love is mutual self-giving that ends in self-recovery." Fulton Sheen
> James Black    james@usf.edu
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.2.5 (MingW32)
> Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org
> 
> iD8DBQFCFMnqikQgpVn8xrARAtSEAJ9Wc737Q0nVE5NTuvT+mvgnnqAZuQCZAZGT
> CKxGSXashuT/w/YtZscnxv0=
> =fU4R
> -----END PGP SIGNATURE-----
>