Posts

Showing posts from March, 2016

Browsing the MOB on ESX 6 displays 503 Service Unavailable (Failed to connect to endpoint: [N7Vmacore4Http20NamedPipeServiceSpecE:0x4bf02038] _serverNamespace = /mob _isRedirect = false _pipeName =/var/run/vmware/proxy-mob)

Image
We've recently been looking to add updated support for our VMware documentation tool and have stumbled into the following error when trying to browse the API using the managed object browser (mob)  503 Service Unavailable (Failed to connect to endpoint: [N7Vmacore4Http20NamedPipeServiceSpecE:0x4bf02038] _serverNamespace = /mob _isRedirect = false _pipeName =/var/run/vmware/proxy-mob)   This really is a terrible bit of error handling by VMware. It turns out that the MOB is disabled - for more information see the following blog post. http://www.virtuallyghetto.com/2015/02/quick-tip-vsphere-mob-is-disabled-by-default-in-esxi-6-0.html The setting to enable it can be found here... Perhaps VMware were too busy updating the new Flash web interface rather than taking the time to write the error message "The Managed Object Browser is disabled on this host...?"....

CuteSoft Editor fails to encode ampersands when viewing XHTML property output - FIX

We've recently been having problems with the CuteSoft editor when viewing the Text property ampersands are correctly encoded as & however when viewing the XHTML property the ampersands are simply shown as "&". We need to use the XHTML property as this resolves issues with the layout of the code, ensuring that the output is XHTML compliant for example ensuring tags are closed correctly in the right order. However with the unencoded ampersands the output is NOT XHTML compliant. We've investigated this further and found that the method being called internally is ConvertToXml() which has the following line of code str1 = str1.Replace( "&" , "&" ); As a workaround to this to get both encoded ampersands and also have XHTML compliant formatting we can do the following Editor1.Text = Editor1.Text.Replace( "&" , "[Temp_Amp_Replacement]" ); string xml = Editor1.XHTML.Replace( &quo

Using the Obsolete attribute in .NET causes the XML serializer to ignore the value causing error "validation error: 'Value' is not a valid value for EnumName."

When using .NET 3.5 (rather than .NET 2.0) if you mark a property or enum value as [Obsolete] the property is value is no longer serialized. For enum values this is a real problem as this prevents the XML from deserializing this value. /// <summary> /// The swap file is stored in the virtual machine directory. This value is obsolete and used for backwards compatibility. /// </summary> [ Obsolete ] vmDirectory = 3, There is an error in XML document (1, 657). ---> System.InvalidOperationException: Instance validation error: ' Value ' is not a valid value for EnumName . There's no good solution for this as this is a hardcoded change built into .NET 3.5 unless you implement your own serialization code. The workaround we use is to remove the Obsolete attribute and instead rename the enumeration value with the Obsolete prefix. This will obviously cause the serialization to fail so you can use "XmlEnum" attribute to determine the value