Adding or modifying interfaces to edge fails with a blank error message
search cancel

Adding or modifying interfaces to edge fails with a blank error message

book

Article ID: 321101

calendar_today

Updated On:

Products

VMware NSX Networking

Issue/Introduction

Symptoms:
  • Adding a new interface to existing ESG or DLR in NSX for vSphere 6.3.2, clicking on submit throws NULL pointer exception in UI.
     
  • Modifying the interface configuration for an existing ESG or DLR fails.
     
  • In the virgo.log file, you see entries similar to:

    [WARN ] http-bio-9090-exec-7 org.springframework.flex.core.DefaultExceptionLogger The following exception occurred during request processing by
    the BlazeDS MessageBroker and will be serialized back to the client: flex.messaging.MessageException: java.lang.NullPointerException : null
    at flex.messaging.services.remoting.adapters.JavaAdapter.invoke(JavaAdapter.java:412)
    at com.vmware.vise.messaging.remoting.JavaAdapterEx.invoke(JavaAdapterEx.java:72)
    at flex.messaging.services.RemotingService.serviceMessage(RemotingService.java:180)
    at flex.messaging.MessageBroker.routeMessageToService(MessageBroker.java:1472)


Environment

VMware NSX for vSphere 6.3.x

Resolution

This issue is resolved in NSX for vSphere 6.3.3, available at VMware Downloads.

Note: This is a known issue in NSX for vSphere 6.3.2 and vSphere VCSA 6.5 U1.

To avoid this issue, create all interfaces when DLR or ESG is being created using UI.

To work around this issue, if you do not want to upgrade, Use API call to change the interface settings:

Method: PUT
URL: https://NSXMGR_IP/api/4.0/edges/{edge-ID}/vnics/{vnic-ID}
Sample Body:
 
<?xml version="1.0" encoding="UTF-8"?>
<vnic>
<label>vNic_1</label>
<name>vnic1</name>
<addressGroups>
<addressGroup>
<primaryAddress>192.168.3.10</primaryAddress>
<subnetMask>255.255.255.0</subnetMask>
<subnetPrefixLength>24</subnetPrefixLength>
</addressGroup>
</addressGroups>
<mtu>1500</mtu>
<type>internal</type>
<isConnected>true</isConnected>
<index>1</index>
<portgroupId>virtualwire-2</portgroupId>
<portgroupName>Edge-LS2</portgroupName>
<enableProxyArp>false</enableProxyArp>
<enableSendRedirects>true</enableSendRedirects>
</vnic>


To add an interface to a DLR:

Method : POST
URL : https://NSXMGR_IP/api/4.0/edges/{edgeId}/interfaces?action=patch

Sample Body:

<interfaces>  
<interface>    
  <name>vNic_1</name>    
  <addressGroups>      
   <addressGroup>        
    <primaryAddress>192.168.3.10</primaryAddress>        
    <subnetMask>255.255.255.0</subnetMask>      
   </addressGroup>    
  </addressGroups>    
  <mtu>1500</mtu>    
  <type>internal</type>    
  <isConnected>true</isConnected>
  <connectedToId>virtualwire-2</connectedToId>
</interface>
</interfaces>


For more information, see the Working with Logical Router Interfaces section of the NSX for vSphere API Guide.