Comments (5)
Please paste the SOAP that caused the error. Set debug: true in VIM.connect to see it.
from rbvmomi.
This is what is reported around the exception dump:
https://gist.github.com/dekz/fd652d48a6d43009b037
I'll try and wade through and find the debug message.
Here are some that I captured with debug on:
https://gist.github.com/dekz/bec973ad82a7e57bc091
from rbvmomi.
So I may have tracked down a possible problem. In the deserializer it attempts to find the class to instantiate, in this case Network. It's picking up a different Network, introduced by another Gem which had defined 'Network' as a module not in its own namespace.
Removing this gem from the Gemfile seems like it fixes that particular problem. Is there a way for deserializer to attempt to namespace deserialize itself to avoid this issue in the future?
from rbvmomi.
The issue is rbvmomi lazy-loads types, so when the deserializer does a
const_get of the type name Ruby does a full constant search before calling
const_missing. You might be able to fix this by changing
https://github.com/vmware/rbvmomi/blob/master/lib/rbvmomi/connection.rb#L211to
@loader.get(name)
but that doesn't solve the whole problem because
the
developer could just as well type VIM::Network, which would resolve to the
non-rbvmomi Network class. We try to work around this in TypeLoader#preload
but that only works completely if rbvmomi is required last.
CC @cdickmann
On Tue, Feb 26, 2013 at 10:45 PM, Jacob Evans [email protected]:
So I may have tracked down a possible problem. In the deserializer it
attempts to find the class to instantiate, in this case Network. It's
picking up a different Network, introduced by another Gem which had defined
'Network' as a module not in its own namespace.Removing this gem from the Gemfile seems like it fixes that particular
problem. Is there a way for deserializer to attempt to namespace
deserialize itself to avoid this issue in the future?—
Reply to this email directly or view it on GitHubhttps://github.com//issues/14#issuecomment-14159604
.
from rbvmomi.
rlane, could you outline the steps a person should take to perhaps get around errors from lazy-loading? I am trying to use the fantastic rbvmomi gem inside a Rails application, but keep running into the dreaded 'stringify_keys' error message because the wrong Class is being called.
from rbvmomi.
Related Issues (20)
- createDate under vm config property shows empty in rbvmomi HOT 12
- Memory leak caused by at_exit {} usage HOT 4
- esxcli option not working HOT 1
- RbVmomi 2.1.0 breaks PBM HOT 6
- Drop support for all EOL Ruby versions
- Add code coverage/review tools to run for every commit/PR
- Get code coverage to a respectable level
- Revamp the VMODL DB usage HOT 1
- API to create Datastore HOT 18
- A specified parameter was not correct: HOT 11
- Trying to get an example to add an nvdimm device/host PMEM datastore to a virtual machine. I've read the docs, but I'm missing some clarity somewhere, and keep getting errors. HOT 3
- vStorageObjectManager not able to create a disk under specified folder HOT 8
- kitchen destroy stopped working on kitchen-vcenter HOT 7
- portgroup info empty HOT 5
- Error message while using esxi_cpu_stats.rb HOT 10
- Definition of StoragePod class and how to query for it? HOT 1
- Add linting/code analysis HOT 4
- Update Hash syntax HOT 6
- RbVmomi deserialization fails on managed object type `ContentLibrary` HOT 4
- New Data Types added in vSphere 7.0 U1 and U2 missing from vmodl.db
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rbvmomi.