VMware Cloud Community
admin
Immortal
Immortal

Connecting to VCD 1.5 API using 1.0 REST for Network returns Internal Server Error

Hi,

I think there is a backward compatibility issue when trying to get information for an OrgNetwork resource in VCD. The scenario is that the VCD REST  API for my VCD system supports both 1.0 and 1.5. I am using a VCD connector that was built against VCD 1.0 REST API, for some reason when I try to access the information about a particular network using 1.0 URL syntax, i.e. the following. I don't have any issues when accessing organization information or any other information I believe.

https://www.vcd.com.au/api/v1.0/network/e1779655-631d-44ad-87fb-874b3505beb7

I received back the following error message:

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

<Error xmlns="http://www.vmware.com/vcloud/v1" stackTrace="com.vmware.vcloud.api.rest.handlers.exceptions.InternalServerErrorRestApiException: Internal server error
at com.vmware.vcloud.api.rest.common.converter.DefaultConverter.toBeanInternal(DefaultConverter.java:113)
at com.vmware.vcloud.api.rest.common.converter.DefaultConverter.toBean(DefaultConverter.java:90)
at com.vmware.vcloud.api.rest.common.converter.NetworkFeaturesConverter.get1_0NatServiceElement(NetworkFeaturesConverter.java:131)
at com.vmware.vcloud.api.rest.common.converter.NetworkFeaturesConverter.from1_5to1_0(NetworkFeaturesConverter.java:110)
at com.vmware.vcloud.api.rest.common.converter.NetworkFeaturesConverter.toBean(NetworkFeaturesConverter.java:42)
at com.vmware.vcloud.api.rest.common.converter.BeanConverterImpl.convert(BeanConverterImpl.java:58)
at com.vmware.vcloud.api.rest.handlers10.NetworkHandler.getNetwork(NetworkHandler.java:82)
at sun.reflect.GeneratedMethodAccessor2553.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:173)
at org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:89)
...

Is anyone aware of this backward compatibilty issue?

Thank you in advance.

Kind regards,

Johan

0 Kudos
5 Replies
rkamal
VMware Employee
VMware Employee

Hi,

Do you get the same error when trying v1.5 (without v1.0 in the URL).

Something like this.

https://www.vcd.com.au/api/network/e1779655-631d-44ad-87fb-874b3505beb7

Regards,

Rajesh Kamal.

0 Kudos
admin
Immortal
Immortal

Hi Rajesh,

No, if I connect using VCD REST 1.5 API syntax it returns the Network Information XML alright.

Kind regards,

Johan

0 Kudos
Todor_Todorov
Hot Shot
Hot Shot

Hi,

What version of vCD are you using? Beta? I think you're hitting a known bug which is already fixed and will be available in vCD 1.5 GA.

Can you post the XML response when getting the network information through 1.5 API just to be sure?

Thanks,

Todor Todorov

admin
Immortal
Immortal

Hi Todor,

Thanks for the information. It might be the beta version, do you know if the Cloud Wiki has information on some of the issues that exist in 1.5 beta but has been resolved in 1.5 GA?

The following is the XML that I get when I access the network using 1.5 REST API URL.

<?xml version="1.0" encoding="UTF-8"?>
<OrgNetwork xmlns="http://www.vmware.com/vcloud/v1.5" name="1_CloudGita1 ExtN/W" id="urn:vcloud:network:e1779655-631d-44ad-87fb-874b3505beb7" type="application/vnd.vmware.vcloud.orgNetwork+xml" href="https://vcd1rhl5vcd.model.infra.com.au/api/network/e1779655-631d-44ad-87fb-874b3505beb7" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.vmware.com/vcloud/v1.5 http://10.22.38.223/api/v1.5/schema/master.xsd">
    <Link rel="up" type="application/vnd.vmware.vcloud.org+xml" href="https://vcd1rhl5vcd.model.infra.com.au/api/org/e8965bd7-f204-4a7a-b910-57a28ccd3914"/>
    <Link rel="down" type="application/vnd.vmware.vcloud.metadata+xml" href="https://vcd1rhl5vcd.model.infra.com.au/api/network/e1779655-631d-44ad-87fb-874b3505beb7/metadata"/>
    <Description>'CloudGita1 External N/W' in VCDSydneyInstance1</Description>
    <Configuration>
        <IpScope>
            <IsInherited>false</IsInherited>
            <Gateway>192.168.0.1</Gateway>
            <Netmask>255.255.255.0</Netmask>
            <Dns1>10.22.38.10</Dns1>
            <Dns2>10.22.38.11</Dns2>
            <IpRanges>
                <IpRange>
                    <StartAddress>192.168.0.100</StartAddress>
                    <EndAddress>192.168.0.199</EndAddress>
                </IpRange>
            </IpRanges>
        </IpScope>
        <ParentNetwork type="application/vnd.vmware.admin.network+xml" name="VLAN405" href="https://vcd1rhl5vcd.model.infra.com.au/api/admin/network/c2ab0381-711b-4f6e-ac7f-80f86fe4c8d5"/>
        <FenceMode>natRouted</FenceMode>
        <RetainNetInfoAcrossDeployments>false</RetainNetInfoAcrossDeployments>
        <Features>
            <DhcpService>
                <IsEnabled>false</IsEnabled>
                <DefaultLeaseTime>3600</DefaultLeaseTime>
                <MaxLeaseTime>7200</MaxLeaseTime>
                <IpRange>
                    <StartAddress>192.168.0.2</StartAddress>
                    <EndAddress>192.168.0.99</EndAddress>
                </IpRange>
            </DhcpService>
            <FirewallService>
                <IsEnabled>true</IsEnabled>
                <DefaultAction>drop</DefaultAction>
                <LogDefaultAction>false</LogDefaultAction>
                <FirewallRule>
                    <IsEnabled>true</IsEnabled>
                    <Description>Allow all outgoing traffic</Description>
                    <Policy>allow</Policy>
                    <Protocols>
                        <Any>true</Any>
                    </Protocols>
                    <Port>-1</Port>
                    <DestinationIp>Any</DestinationIp>
                    <SourcePort>-1</SourcePort>
                    <SourceIp>Any</SourceIp>
                    <Direction>out</Direction>
                    <EnableLogging>false</EnableLogging>
                </FirewallRule>
            </FirewallService>
            <NatService>
                <IsEnabled>false</IsEnabled>
                <NatType>portForwarding</NatType>
                <Policy>allowTraffic</Policy>
            </NatService>
            <IpsecVpnService>
                <IsEnabled>false</IsEnabled>
            </IpsecVpnService>
            <StaticRoutingService>
                <IsEnabled>false</IsEnabled>
            </StaticRoutingService>
        </Features>
        <SyslogServerSettings/>
    </Configuration>
    <AllowedExternalIpAddresses/>
</OrgNetwork>

Thank you.

Kind regards,

Johan

0 Kudos
Todor_Todorov
Hot Shot
Hot Shot

Hi,

I'm not aware of such list of issues on the wiki.

Looking at the request, it seems that it is indeed the bug that I mentioned previously.

Regards,

Todor Todorov

0 Kudos