1 mike 1.1
2
3 ================================================================================
4 Bug Report (Markus on SNIA interoperability testing)
5 ================================================================================
6
7 Thanks for effort. Will put patches in over next day or so.
8
9 Karl
10 Thanks for your message at 12:26 PM 4/9/2001 +0200. Your message was:
11 >Markus M129ller wrote:
12 > >
13 > > Hi
14 > >
15 > > while trying to get the SNIA browser working with Pegasus, I found some
16 > > minor inconsistencies:
17 > >
18 > > - XmlWriter doesn't honor message ids:
19 > > I extended the method 'formatSimpleRspMessage' to return the given
20 > > MessageId and adapted the CIMServer.cpp accordingly
21 > >
22 mike 1.1 > > - Handler.cpp gets confused about case insensitivity. getFieldValue
23 > > should use strncasecmp instead of strncmp; the SNIA browser sends
24 > > 'Content-length' instead of 'Content-Length'.
25 > >
26 > > - In addition to M-POST, POST should be supported, so I check for POST
27 > or M-POST in this 'if'-statement.
28 > >
29 > >
30 >Hi, this morning I managed to get the SNIA browser working together with
31 >Pegasus. In addition to the fix proposals mentioned above, the following
32 >fixes should be applied.
33 >
34 >- Common/XmlParser.cpp
35 >XmlSemanticError issues VALIDATION_ERROR instead of SEMANTIC_ERROR
36 >
37 >- Server/CIMServer.cpp
38 >substitute strcmp with strcasecmp in all method call like "enumerate
39 >class"; the method names are case-insensitive.
40 >
41 >
42 >In the SNIA code I had to include
43 mike 1.1 >- in org/snia/wbem/cim/CIMParameter.java the following lines (after line
44 ># 104)
45 >
46 > String refstr=qnode.getAttribute("TYPE");
47 > if (refstr.equalsIgnoreCase("reference")) {
48 > paramToken=XMLNode.XML_ELEMENT_PARAMETER_REFERENCE;
49 > }
50 >
51 >because Pegasus erroneously marks reference parameters within methods as
52 ><PARAMETER .. TYPE="reference" instead of <PARAMETER.REFERENCE ...
53 >which is a bug according to the CIM XML specs.
54 >
55 >- in org/snia/wbem/cim/CIMValue.java the line following lines (after
56 >line #256)
57 >
58 >cop.setObjectName(node.mustGetAttribute("NAME"));
59 >
60 >has to be substituted with code that accepts constructs like
61 ><VALUE.REFERENCE><CLASSNAME NAME=""/></VALUE.REFERENCE> which gives an
62 >empty name. So in the case of VALUE.REFERENCE (=token 4003) we have to
63 >use node.GetAttribute("Name") and except returned null pointers.
64 mike 1.1 >I guess but don't know that this empty string is a reference to the
65 >local name space, i.e. root/cimv20.
66 >
67 >
68 >
69 >I would like to see comments and I hope that this message helps to get
70 >the Pegasus code fixed.
71 >
72 >
73 >
74 >Kind regards
75 >
76 >Markus Mueller
77 >Linux Technology Council (IBM)
78 >
79 >_________________________________________________________
80 >Do You Yahoo!?
81 >Get your free @yahoo.com address at http://mail.yahoo.com
82
83 Karl Schopmeyer Inova Europe Inc.
84 305 Spring Creek Village, Suite 475 - Dallas TX, 75248 USA
85 mike 1.1 EMAIL: k.schopmeyer@attglobal.net FAX: 1-214-853-5493
86 USA Phone: 1-972-239-0466, Cell Phone 1-972-814-5581
87 France: Phone +33 (0)1 4181 0443, Mobile: +33 (0)6 0798 4927
|