« Chains required past this point | Main| Simple Solution for Web service is unable to create LotusScript object. »

Help Needed: Web service is unable to create LotusScript object.

QuickImage Category Lotus Technical

I feel like I'm missing something really simple, but I can't seem to figure this out.

Web service is unable to create LotusScript object.

LotusScript Class defined in Script Library cannot be created by a web service when running on a server.

Updated: Solution here!

Given the following LotusScript Class:
Class SimpleEcho
    Sub New ()
        Messagebox |Creating new instance of SimpleEcho |
    End Sub

    Function Echo (source As String) As String
        Dim result As String

        result = |Echo: | & source
        Messagebox |SimpleEchoClass | & result

        Echo = result
    End Function ' Echo
End Class 'SimpleEcho

If the Class is included directly in a web service, it works as expected on both a local client and a server.

If the Class is included by including a LotusScript library (Use "SimpleEchoClass"), it works when testing on a local client, but breaks when testing on a server.

Java Error:

WebServiceEngineFault
faultCode: {https://schemas.xmlsoap.org/soap/envelope/}Server.generalException
faultSubcode:
faultString: Web service SimpleEcho is unable to create LotusScript object for SimpleEcho datatype in method ECHO
faultActor:
faultNode:
faultDetail:

Web service SimpleEcho is unable to create LotusScript object for SimpleEcho datatype in method ECHO
at lotus.domino.axis.message.SOAPFaultBuilder.createFault(Unknown Source)
at lotus.domino.axis.message.SOAPFaultBuilder.endElement(Unknown Source)
at lotus.domino.axis.encoding.DeserializationContextImpl.endElement(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.endElement(Unknown Source)
at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
at javax.xml.parsers.SAXParser.parse(Unknown Source)
at lotus.domino.axis.encoding.DeserializationContextImpl.parse(Unknown Source)
at lotus.domino.axis.SOAPPart.getAsSOAPEnvelope(Unknown Source)
at lotus.domino.axis.Message.getSOAPEnvelope(Unknown Source)
at lotus.domino.axis.client.Call.invokeEngine(Unknown Source)
at lotus.domino.axis.client.Call.invoke(Unknown Source)
at lotus.domino.axis.client.Call.invoke(Unknown Source)
at lotus.domino.axis.client.Call.invoke(Unknown Source)
at lotus.domino.axis.client.Call.invoke(Unknown Source)
at DefaultNamespace.DominoSoapBindingStub.ECHO(DominoSoapBindingStub.java:92)
at JavaAgent.NotesMain(JavaAgent.java:17)
at lotus.domino.AgentBase.runNotes(Unknown Source)
at lotus.domino.NotesThread.run(Unknown Source)

Additional Info

Notes Client version 7.0.3, Notes Server 7.0.1 on Windows 2000.
I've placed a sample nsf here: SimpleEcho.zip. (File is also available on my downloads page).

Any help on figuring this out would be greatly appreciated.

* special thanks to Julian Robichaux and his most excellent Stubby tool.

-Devin

Comments

Gravatar Image1 - Unfortunately, I don't think you can define the Port Type class for a web service in a script library until Domino 8. Check the Notes 8 release notes for a document entitled: "Moving Web service classes to a Java script library". It mentions special considerations for Java, but I think it applies to LotusScript (at least in general) as well.

I'll see if I can do some testing to confirm.

Post A Comment

:-D:-o:-p:-x:-(:-):-\:angry::banghead;:cool::cry::emb::grin::huh::laugh::lips::rolleyes::sniper:;-)

Search

Wowsers! A Tag Cloud!

Links

MiscLinks