[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [xmlblaster] Exception handling



Hi Ben,

what about this approach:

XmlBlasterException contains 4 attributes, all of
type String:

id:       security.notauthenticated
location: /node/heron/client/joe/3
reason:   Authorization denied for message oid 'account retrieval'
detail:   Debug detail, e.g. stack trace (optional)

id:
===

- internal
  internal.nullpointer

- invocation.publish
  invocation.publish.qos
  invocation.publish.qos.destination
  invocation.publish.key
  invocation.publish.key.oid
  (method invoked inapproprately)

- communication
  communication.connectionlost
  communication.noconnection
  communication.address
  (e.g. Invalid URL address)

- security.notauthenticated
  security.notauthorized
  (e.g. writing a readonly message,
   reading a message you are not allowed to)

- What else??

location:
=========

- /node/heron/client/joe/3   (user session)
- /node/heron/protocol/email


XmlBlasterException.toXml(): ============================

 <exception id='invocation.publish'>

    <id>
       <invocation>
          <publish/>
       </invocation>
    </id>

    <location>
       <node>
           <heron>
             <client>
                <joe/>
             </client>
           </heron>
       </node>
    </location>

    <reason><![CDATA[Invalid publish]]></reason>

    <detail/>

<exception>


All ID's are available in a java.util.ResourceBundle the question is if the server already uses the localized text for the client language, or if the client uses the id to find its localized error text.

Is this a structure which is usable
in your use case, Ben?


Marcel, Michele