cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
498
Views
0
Helpful
1
Replies

can't create meeting using XML API

hagai.sela
Level 1
Level 1

I am trying to compile webex's xml schema to java code using jaxb. I found this project as a starting point:

https://code.google.com/archive/p/webex-java-sdk/

It compiled under java 8 with a few minor changes. My problem now is that I am getting an error result from webex:

"unable to instantiate com.webex.xmlapi.service.binding.CreateMeeting; java.lang.ClassNotFoundException: com.webex.xmlapi.service.binding.CreateMeeting"

This is the message I am sending and the response I am getting

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

<messageType

    xmlns="http://www.webex.com/schemas/2002/06/service"

    xmlns:ns2="http://www.webex.com/schemas/2002/06/service/ep"

    xmlns:ns4="http://www.webex.com/schemas/2002/06/service/attendee"

    xmlns:ns3="http://www.webex.com/schemas/2002/06/service/meetingtype"

    xmlns:ns6="http://www.webex.com/schemas/2002/06/service/user"

    xmlns:ns5="http://www.webex.com/schemas/2002/06/common"

    xmlns:ns8="http://www.webex.com/schemas/2002/06/service/meeting/auo"

    xmlns:ns7="http://www.webex.com/schemas/2002/06/service/event"

    xmlns:ns13="http://www.webex.com/schemas/2002/06/service/session"

    xmlns:ns9="http://www.webex.com/schemas/2002/06/service/history"

    xmlns:ns12="http://www.webex.com/schemas/2002/06/service/trainingsession"

    xmlns:ns11="http://www.webex.com/schemas/2002/06/service/site"

    xmlns:ns10="http://www.webex.com/schemas/2002/06/service/supportsession"

    xmlns:ns17="http://www.webex.com/schemas/2002/06/service/sales"

    xmlns:ns16="http://www.webex.com/schemas/2002/06/service/meeting"

    xmlns:ns15="http://www.webex.com/schemas/2002/06/service/trainingsessionqti"

    xmlns:ns14="http://www.webex.com/schemas/2002/06/service/trainingsessionqtiasi">

    <header>

        <securityContext>

            <ns5:webExID>hagai.sela1@gmail.com</ns5:webExID>

            <ns5:password>Password</ns5:password>

            <ns5:siteID>111111</ns5:siteID>

            <ns5:partnerID>

                partnerId</ns5:partnerID>

        </securityContext>

    </header>

    <body>

        <bodyContent xsi:type="ns16:createMeeting" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

            <ns16:accessControl>

                <ns16:meetingPassword>pass123</ns16:meetingPassword>

            </ns16:accessControl>

            <ns16:metaData>

                <ns16:confName>Sample Meeting</ns16:confName>

                <ns16:meetingType>1</ns16:meetingType>

                <ns16:agenda>test</ns16:agenda>

            </ns16:metaData>

            <ns16:participants>

                <ns16:maxUserNumber>4</ns16:maxUserNumber>

                <ns16:attendees>

                    <ns16:attendee>

                        <ns4:person>

                            <ns5:name>hagai sela</ns5:name>

                            <ns5:email>hagai.sela@gmail.com</ns5:email>

                        </ns4:person>

                    </ns16:attendee>

                </ns16:attendees>

            </ns16:participants>

            <ns16:enableOptions>

                <ns16:chat>true</ns16:chat>

                <ns16:poll>true</ns16:poll>

                <ns16:audioVideo>true</ns16:audioVideo>

            </ns16:enableOptions>

            <ns16:schedule>

                <ns16:startDate>11/11/2016 23:23:23</ns16:startDate>

                <ns16:timeZoneID>4</ns16:timeZoneID>

                <ns16:duration>20</ns16:duration>

                <ns16:openTime>900</ns16:openTime>

                <ns16:joinTeleconfBeforeHost>true</ns16:joinTeleconfBeforeHost>

            </ns16:schedule>

            <ns16:telephony>

                <ns16:telephonySupport>CALLIN</ns16:telephonySupport>

                <ns16:extTelephonyDescription>Call 1-800-555-1234, Passcode 98765</ns16:extTelephonyDescription>

                <ns16:enableTSP>true</ns16:enableTSP>

            </ns16:telephony>

        </bodyContent>

    </body>

</messageType>

<?xml version="1.0" encoding="UTF-8"?>

<serv:message xmlns:serv="http://www.webex.com/schemas/2002/06/service" xmlns:com="http://www.webex.com/schemas/2002/06/common">

    <serv:header>

        <serv:response>

            <serv:result>FAILURE</serv:result>

            <serv:reason>validation: unable to instantiate com.webex.xmlapi.service.binding.CreateMeeting; java.lang.ClassNotFoundException: com.webex.xmlapi.service.binding.CreateMeeting</serv:reason>

            <serv:gsbStatus>PRIMARY</serv:gsbStatus>

            <serv:exceptionID>999999</serv:exceptionID>

        </serv:response>

    </serv:header>

    <serv:body><serv:bodyContent/></serv:body>

</serv:message>

1 Accepted Solution

Accepted Solutions

nmorrow
Cisco Employee
Cisco Employee

Hello,

     The namespaces for the XML API services are already defined and the XML service doesn't pay attention to new declarations for the same namespaces. The meeting service is defined as meet, so your xsi:type should be meet:createMeeting. You can find the predefined namespaces near the top of each schema file. Note that xmlns:xsi should still be defined in your XML document, although it may normally be defined in message for easier readability, but there is nothing wrong with your definition here.

     One other thing to note is that your security context can be updated slightly to be more easily managed and audited in the future, by removing siteID and partnerID and replacing with siteName, which is the subdomain of your WebEx site. As an example, the siteName for apidemoeu.webex.com is apidemoeu.

View solution in original post

1 Reply 1

nmorrow
Cisco Employee
Cisco Employee

Hello,

     The namespaces for the XML API services are already defined and the XML service doesn't pay attention to new declarations for the same namespaces. The meeting service is defined as meet, so your xsi:type should be meet:createMeeting. You can find the predefined namespaces near the top of each schema file. Note that xmlns:xsi should still be defined in your XML document, although it may normally be defined in message for easier readability, but there is nothing wrong with your definition here.

     One other thing to note is that your security context can be updated slightly to be more easily managed and audited in the future, by removing siteID and partnerID and replacing with siteName, which is the subdomain of your WebEx site. As an example, the siteName for apidemoeu.webex.com is apidemoeu.

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community: