LotusScript.doc v2 beta 5

Beta 56 (and hopefully the last beta) of LotusScript.doc v2 is out – get it here (lsdoc_200beta6.zip). This beta fixes minor issues with comment parsing and makes logging easier to configure by gracefully failing if not configured in java.policy (for more info see LotusScript.doc v2 – java.policy changes required).

This beta also makes the database run on Notes 7 by not using StringBuilder but StringBuffer instead.

Please note: Please remember to adjust the Java heap size. For more information see this post.

Comments as always welcome here on the blog or by e-mail to lekkim [at] lsdoc [dot] org.

Update: I found a small bug so you’ll get beta 6 instead of 5…

2 thoughts on “LotusScript.doc v2 beta 5”

  1. Hi Mikkel!

    Thanks for the update and your great work!

    I still have problems generating the lsdoc with beta 5.

    Error message using Notes 7.03 on finest logging level:

    [LSDOC.CORE.REGISTRY           ][INFO   ]: Adding all available parsers to the parser registry

    [LSDOC.CORE.REGISTRY           ][INFO   ]: Instantiated and initialized design element parser: org.lsdoc.dbdesign.parser.DatabaseParser

    [LSDOC.CORE.REGISTRY           ][INFO   ]: Instantiated and initialized design element parser: org.lsdoc.dbdesign.parser.FormParser

    [LSDOC.CORE.REGISTRY           ][INFO   ]: Instantiated and initialized design element parser: org.lsdoc.dbdesign.parser.ViewParser

    [LSDOC.CORE.REGISTRY           ][INFO   ]: Instantiated and initialized design element parser: org.lsdoc.dbdesign.parser.AgentParser

    [LSDOC.CORE.REGISTRY           ][INFO   ]: Instantiated and initialized design element parser: org.lsdoc.dbdesign.parser.ScriptLibraryParser

    [LSDOC.CORE.REGISTRY           ][INFO   ]: Instantiated and initialized design element parser: org.lsdoc.dbdesign.parser.PageParser

    [LSDOC.CORE.REGISTRY           ][INFO   ]: Instantiated and initialized design element parser: org.lsdoc.dbdesign.parser.SharedActionsParser

    [LSDOC.CORE.REGISTRY           ][INFO   ]: Instantiated and initialized design element parser: org.lsdoc.dbdesign.parser.ActionParser

    [LSDOC.CORE.REGISTRY           ][INFO   ]: Instantiated and initialized design element parser: org.lsdoc.dbdesign.parser.DatabaseScriptParser

    [LSDOC.CORE.REGISTRY           ][INFO   ]: Added LotusScript language parser to the registry

    [LSDOC.CORE.CONTEXT            ][INFO   ]: Adding design element type to include: org.lsdoc.dbdesign.Database

    [LSDOC.CORE.CONTEXT            ][INFO   ]: Adding design element type to exclude: org.lsdoc.dbdesign.Form

    [LSDOC.CORE.CONTEXT            ][INFO   ]: Adding design element type to exclude: org.lsdoc.dbdesign.Subform

    [LSDOC.CORE.CONTEXT            ][INFO   ]: Adding design element type to exclude: org.lsdoc.dbdesign.View

    [LSDOC.CORE.CONTEXT            ][INFO   ]: Adding design element type to exclude: org.lsdoc.dbdesign.Agent

    [LSDOC.CORE.CONTEXT            ][INFO   ]: Adding design element type to exclude: org.lsdoc.dbdesign.Page

    [LSDOC.CORE.CONTEXT            ][INFO   ]: Adding design element type to exclude: org.lsdoc.dbdesign.SharedActions

    [LSDOC.CORE.CONTEXT            ][INFO   ]: Adding design element type to exclude: org.lsdoc.dbdesign.DatabaseScript

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, dxl.iobserver.class=null

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, domino.dtd_root=null

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, domino.session_strategy=org.lsdoc.session.NrpcNoThreadSessionStrategy@2d6b3a30

    [LSDOC.CORE.PARSER             ][FINE   ]: Instructing DXLExporter to export DXL for script libraries

    [ROOT                          ][SEVERE ]: Exception trying to parse database

    Exception: java.lang.ExceptionInInitializerError

        at org.lsdoc.log.LoggedElementMessage.<init>(LoggedElementMessage.java:35)

        at org.lsdoc.log.LogUtil.log(LogUtil.java:192)

        at org.lsdoc.log.LogUtil.debug(LogUtil.java:74)

        at org.lsdoc.dxl.DxlParser.parse(DxlParser.java:386)

        at org.lsdoc.dxl.DxlParser.parse(DxlParser.java:330)

        at org.lsdoc.dxl.DxlParser.parse(DxlParser.java:280)

        at org.lsdoc.Parser.doParse(Parser.java:246)

        at org.lsdoc.Parser.parseDatabase(Parser.java:98)

        at org.lsdoc.runner.notes.NotesAgent.NotesMain(NotesAgent.java:156)

        at org.lsdoc.runner.notes.DcNotesAgent.execute(DcNotesAgent.java:40)

        at JavaAgent.NotesMain(Unknown Source)

        at lotus.domino.AgentBase.runNotes(Unknown Source)

        at lotus.domino.NotesThread.run(Unknown Source)

    Caused by: java.lang.NullPointerException

        at org.lsdoc.util.NodeXPathUtil.<clinit>(NodeXPathUtil.java:32)

        … 13 more

    java.lang.NullPointerException

        at org.lsdoc.util.NodeXPathUtil.<clinit>(NodeXPathUtil.java:32)

        at org.lsdoc.log.LoggedElementMessage.<init>(LoggedElementMessage.java:35)

        at org.lsdoc.log.LogUtil.log(LogUtil.java:192)

        at org.lsdoc.log.LogUtil.debug(LogUtil.java:74)

        at org.lsdoc.dxl.DxlParser.parse(DxlParser.java:386)

        at org.lsdoc.dxl.DxlParser.parse(DxlParser.java:330)

        at org.lsdoc.dxl.DxlParser.parse(DxlParser.java:280)

        at org.lsdoc.Parser.doParse(Parser.java:246)

        at org.lsdoc.Parser.parseDatabase(Parser.java:98)

        at org.lsdoc.runner.notes.NotesAgent.NotesMain(NotesAgent.java:156)

        at org.lsdoc.runner.notes.DcNotesAgent.execute(DcNotesAgent.java:40)

        at JavaAgent.NotesMain(Unknown Source)

        at lotus.domino.AgentBase.runNotes(Unknown Source)

        at lotus.domino.NotesThread.run(Unknown Source)

    Error message using Notes 8.5 on finer logging level:

    [ROOT                          ][FINE   ]: Found ICommentParser in FeatureRegistry (class: org.lsdoc.language.ls.comment.LsdocCommentParser)

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Trying to extract comment forwards

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Trying to extract comment backwards

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Unable to find comment lines – setting comment to null

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.code_inspector=null

    [ROOT                          ][FINE   ]: Starting to parse LotusScript sub

    [ROOT                          ][FINE   ]: Parsed sub/function definition (isStatic: null, modifier: Public, type: Sub, name: PRTTPostInitiateTask, args: (pwdb As PavoneWorkflowDocumentBase, IsMerge As Variant, plmEditors As PavoneLinkMessage, plmReaders As PavoneLinkMessage), returnType: null)

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.keep_sourcecode=null

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.comment_parser=org.lsdoc.language.ls.comment.LsdocCommentParser@45b145b1

    [ROOT                          ][FINE   ]: Found ICommentParser in FeatureRegistry (class: org.lsdoc.language.ls.comment.LsdocCommentParser)

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Trying to extract comment forwards

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Trying to extract comment backwards

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Unable to find comment lines – setting comment to null

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.code_inspector=null

    [ROOT                          ][FINE   ]: Starting to parse LotusScript function

    [ROOT                          ][FINE   ]: Parsed sub/function definition (isStatic: null, modifier: Private, type: Function, name: PHInvolvedPersons, args: (p_nd As NotesDocument) , returnType: Variant)

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.ignore_private=null

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.keep_sourcecode=null

    [ROOT                          ][FINE   ]: Parsing a function – setting return type

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.comment_parser=org.lsdoc.language.ls.comment.LsdocCommentParser@45b145b1

    [ROOT                          ][FINE   ]: Found ICommentParser in FeatureRegistry (class: org.lsdoc.language.ls.comment.LsdocCommentParser)

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Trying to extract comment forwards

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Trying to extract comment backwards

    [LSDOC.LS.COMMENT.PARSERS      ][FINE   ]: Found comment end sequence (‘*/’) – extract comment before parent element

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, system.newline.separator=null

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.code_inspector=null

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.dbdesign.include_when_no_code=null

    [ROOT                          ][FINE   ]: Encountered database-node – wrapping in event and publishing

    [ROOT                          ][FINE   ]: Processing scriptlibrary element: DB_Planungsheft_WFUIEventLib (DXL parse message — ns: http://www.lotus.com/dxl, element: scriptlibrary, value: null, xpath: database/scriptlibrary[@name=’DB_Planungsheft_WFUIEventLib’])

    [ROOT                          ][FINE   ]: Processing noteinfo element: 1D2D92805DE4EEF8C1257515004EA933 (DXL parse message — ns: http://www.lotus.com/dxl, element: noteinfo, value: null, xpath: database/scriptlibrary[@name=’DB_Planungsheft_WFUIEventLib’]/noteinfo[1])

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.dbdesign.parse_code=null

    [ROOT                          ][FINE   ]: Starting to parse LotusScript constant

    [ROOT                          ][FINE   ]: Parsed constant definition (modifier: Private, name: PACKAGE, suffix: null, value: "DB_Planungsheft_WFUIEventLib")

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.ignore_private=null

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.keep_sourcecode=null

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.comment_parser=org.lsdoc.language.ls.comment.LsdocCommentParser@45b145b1

    [ROOT                          ][FINE   ]: Found ICommentParser in FeatureRegistry (class: org.lsdoc.language.ls.comment.LsdocCommentParser)

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Trying to extract comment forwards

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Trying to extract comment backwards

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Unable to find comment lines – setting comment to null

    [ROOT                          ][FINE   ]: Starting to parse LotusScript class

    [ROOT                          ][FINE   ]: Parsed class definition (modifier: Public, name: DB_Planungsheft_WFUIEventHandler, parentClass: DBUIWorkflowEventHandler)

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.keep_sourcecode=null

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.ls.comment_parser=org.lsdoc.language.ls.comment.LsdocCommentParser@45b145b1

    [ROOT                          ][FINE   ]: Found ICommentParser in FeatureRegistry (class: org.lsdoc.language.ls.comment.LsdocCommentParser)

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Trying to extract comment forwards

    [LSDOC.LS.COMMENT.PARSERS.LSDOC][FINER  ]: Trying to extract comment backwards

    [LSDOC.LS.COMMENT.PARSERS      ][FINE   ]: Found comment end sequence (‘*/’) – extract comment before parent element

    [LSDOC.CORE                    ][FINER  ]: Getting value for feature, parser.dbdesign.ignore_exceptions=null

    [ROOT                          ][SEVERE ]: Exception trying to parse database

    Exception: java.lang.StringIndexOutOfBoundsException

        at java.lang.String.charAt(String.java:418)

        at org.lsdoc.language.ls.comment.AbstractCommentParser.trimTabsSpaces(AbstractCommentParser.java:199)

        at org.lsdoc.language.ls.comment.AbstractCommentParser.parse(AbstractCommentParser.java:158)

        at org.lsdoc.language.ls.parser.BaseParser.lookForComment(BaseParser.java:66)

        at org.lsdoc.language.ls.parser.ClassParser.parse(ClassParser.java:242)

        at org.lsdoc.language.ls.parser.Parser.parse(Parser.java:125)

        at org.lsdoc.language.ls.parser.Parser.parse(Parser.java:312)

        at org.lsdoc.dbdesign.parser.AbstractElementParser.findCodeElements(AbstractElementParser.java:136)

        at org.lsdoc.dbdesign.parser.ScriptLibraryParser.parse(ScriptLibraryParser.java:75)

        at org.lsdoc.Parser$2.added(Parser.java:399)

        at org.lsdoc.dxl.DxlParser$1.added(DxlParser.java:169)

        at org.lsdoc.elementobserver.simple.SimpleObserver.activateListener(SimpleObserver.java:44)

        at org.lsdoc.elementobserver.BaseObserver.activateListeners(BaseObserver.java:110)

        at org.lsdoc.elementobserver.BaseObserver.addElement(BaseObserver.java:174)

        at org.lsdoc.dxl.DxlParser.parse(DxlParser.java:406)

        at org.lsdoc.dxl.DxlParser.parse(DxlParser.java:330)

        at org.lsdoc.dxl.DxlParser.parse(DxlParser.java:280)

        at org.lsdoc.Parser.doParse(Parser.java:246)

        at org.lsdoc.Parser.parseDatabase(Parser.java:98)

        at org.lsdoc.runner.notes.NotesAgent.NotesMain(NotesAgent.java:156)

        at org.lsdoc.runner.notes.DcNotesAgent.execute(DcNotesAgent.java:40)

        at JavaAgent.NotesMain(Unknown Source)

        at lotus.domino.AgentBase.runNotes(Unknown Source)

        at lotus.domino.NotesThread.run(Unknown Source)

    Like

Comments are closed.