Debugging a Custom IFIlter

Has anyone had any success deploying a custom developed IFilter in SP2013?
Essentially I've created an IFilter that reads a specifically formatted text file (with the extension LAS) and extracts crawled properties based on the content.
I've tested the filter through IFilter View and I see the properties being crawled, both from IPersistFile and IPersistStream interface.
However, SP2013 doesn't appear to be using the IFilter at all. It does crawl the .LAS files successfully, but appears to be crawling them as text, as I can search and find files by their contents within SP2103 but none of my custom crawled properties get
created.
I've followed the instructions in the article :
How to Build an IFilter for SharePoint 2010 Search and Windows Search Using C++, ATL, and MFC 
followed by
HOW TO: Implement a custom IFilter in SharePoint 2013
but still no joy.
I'm pretty sure when it comes to SP2013 crawl my DLL is never being called. I've set up the registry on the crawl server as per the notes in the above links too. In doing so I gave the .las a new Content Type application/lasfile and used that in the New-SPEnterpriseSearchFileFormat
command. I also added the mime type in to IIS just in case it had anything to do with that.
Any thoughts on my next step for debugging would be great.
Thanks,
Ross

Hi Ross,
I am trying to involve someone familiar with this topic to further look at this issue.
Regards,
Forum Support
Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
[email protected]
Rebecca Tu
TechNet Community Support

Similar Messages

  • Is it possible to override the built-in PDF format handler with a custom IFilter for PDF?

    Hi,
    SharePoint 2013 comes with a built-in "format handler" for PDF now, so it can index PDF files out of the box. This is great for most users, as it now no longer is necessary to install a third-party IFilter for crawling PDF documents.
    My question is, is it possible to override the built-in format handler for PDF with a custom IFilter for PDF? I played with the Set-SPEnterpriseSearchFileFormatState and Remove-SPEnterpriseSearchFileFormat cmdlets. While it is possible to deactivate
    the built-in format handler, I was not able to remove it and to create a new one that activates a custom IFilter for PDF files.
    Background of the question: While the new built-in format handler for PDF will probably be sufficient for many SharePoint users, some need additional capabilities regarding indexing if PDF documents, e.g. extraction of custom metadata from PDF's document
    information dictionary and embedded XMP metadata. PDFlib GmbH, the company I work form, sells an IFilter for PDF, and of course we would like to continue to offer this for SharePoint 2013.
    Thanks
    Stephan

    You should be able to replace it with any ifilter you want, this is the procedure for installing it:
    Install PDF iFilter 9.0 (64 bit) from
    http://www.adobe.com/support/downloads/detail.jsp?ftpID=4025 (http://www.adobe.com/support/downloads/detail.jsp?ftpID=4025)
    Download PDF icon picture from Adobe web site
    http://www.adobe.com/misc/linking.html (http://www.adobe.com/misc/linking.html)  and copy to C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\TEMPLATE\IMAGES\
    Add the following entry in docIcon.xml file, which can be found at: C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\TEMPLATE\XML
    <Mapping Key="pdf" Value="pdficon_small.png" />
    Add pdf file type on the File Type page under Search Service Application
    Open regedit
    Navigate to the following location:
    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office Server\15.0\Search\Setup\ContentIndexCommon\Filters\Extension
    Right-click > Click New > Key to create a new key for .pdf
    Add the following GUID in the default value
    {E8978DA6-047F-4E3D-9C78-CDBE46041603}
    •Restart the SharePoint Server Search 15
    •Reboot the SharePoint servers in Farm
    •Create a Test site (with any out-of-box site template) and create a document library upload any sample PDF document(s).
    •Perform FULL Crawl to get search result.
    Once the crawl is completed we will get search results.
    Kind regards,
    Margriet Bruggeman
    Lois & Clark IT Services
    web site: http://www.loisandclark.eu
    blog: http://www.sharepointdragons.com

  • Debugging a custom realm in WLS 6.1

    Hi all. I'm trying to find out how to debug my custom realm. I first implemented
    the DebuggableRealm and put log.debug calls in my realm. I then set the realm.debug
    property to "true" when I start the server. Is that it? The javadocs on debugging
    are very sparse. I wasn't able to find a javadoc for weblogic.logging.LogOutputStream.
    I also found a DebugSecurityRealm attribute in the ServerDebug element in config.xml
    but am thinking this is old (from 5.X?).
    Are there any other documents I should be looking at? Thanks!
    jeff

    Thanks very much, Utpal.
    I still can't find the class (or even the package for that matter) at
    http://e-docs.beasys.com/wls/docs61/javadocs/index.html
    And that sort of mystifies me. Still, your answer solves my current problem.
    I still don't fully understand the ConfigurationMBean
    stuff as a whole, and how they get bound to a particular realm; i.e. Do I need
    to write a MyRealmConfigurationMBean, and if so, how do
    I bind it to MyRealm?
    Note that the code I originally cited casted a BasicRealm return type to a BasicRealmMBean;
    It's not immediately apparent why one is
    even castable to the other, since they are two interfaces that
    are not on the same inheritance line (I don't think).
    Thanks for your time. I appreciate your help.
    -chris
    Finally,
    "Utpal" <[email protected]> wrote:
    Check this out
    C:\opt\bea\wls61sp2\config\mydomain>javap weblogic.server.Server
    Compiled from Server.java
    public final class weblogic.server.Server extends java.lang.Object {
    public static final java.lang.String DEFAULT_PROTOCOL;
    public static final int DEFAULT_PORT;
    public static weblogic.management.configuration.ServerMBean getConfig();
    public static weblogic.management.configuration.ServerDebugMBean
    getDebug();
    public static weblogic.management.configuration.SecurityMBean
    getSecurityCon
    fig();
    public static void initialize();
    It's weblogic.server.Server class.
    -utpal

  • Bypass content-based format detection so I can use a custom iFilter in Sharepoint 2013 Search

    Can I get SharePoint 2013 Search to bypass the content-based format detection and use the file extension to determine the format (and therefore the format handler so that I can use a customer iFilter)?
    We have a proprietary file format which uses xml, and we use a specific filename extension to indicate the type of file.  We have a custom iFilter to parse the file, because we only want some of the content to be indexed.  The iFilter works with
    Windows Search.  I’m now trying to use our custom iFilter to search the same files with SharePoint 2013.  SharePoint 2013 Search appears to determine a file’s format from its content and not from its file extension (I have confirmed this by changing
    the extensions of .docx and .txt files).  SharePoint 2013 search appears to use the built-in XML format handler to index our proprietary files.  Can I get SharePoint 2013 Search to bypass the content-based format detection and use the file extension
    to determine the format (and therefore the format handler)?  I think SharePoint 2010 may allow this, but I can’t find out if/how it is done in SharePoint 2013.
    I understand that built-in format handlers can’t be replaced by custom iFilters, but I don’t want to replace the XML format handler for .xml files.  

    Hi jeh271,
    quite interesting, because as i know iPersistStream should be installed when you need to use ifilter when using windows search.
    just curious, if you also restart the spsearchhostcontroller?
    as i know the search should have the content-based format,we cant bypass it, if we bypass it, then it may broke.
    i saw some thread about this before:
    http://social.technet.microsoft.com/Forums/sharepoint/en-US/944e6878-a7f0-4c0e-98b7-a7fb9faeef1b/bcs-connector-and-mimetypefield
    ifilter example:
    http://msdn.microsoft.com/en-us/library/hh694268(v=office.14).aspx
    last time i did this, seems similar issue:
    • The custom iFilter is working in SP 2010 but when we followed the same process of registering the iFilter in SP 2013, it was not working.
    • So, we knew that we were some missing some extra step in registering the filter in SP 2013.
    • Finally, we involved the Product group and we found out that we need to run an extra PowerShell commandlet apart from following the steps to register it in SP 2010 (given in this link:- http://msdn.microsoft.com/en-us/library/hh694268(v=office.14).aspx )
    • We ran the commandlet described here in this article http://technet.microsoft.com/en-us/library/jj219556.aspx.
    • The New-SPEnterpriseSearchFileFormat cmdlet adds a new file format and a corresponding file name extension to the search parsing system. This binds the file format to a filter-based format handler in the search parsing system. Thus, the search parsing system can only parse the new file format if the user has installed a corresponding filter-based format handler, an IFilter, for the new file format. If the installed IFilter registers more than one file name extension, the user must use the New-SPEnterpriseSearchFileFormat cmdlet to add a new file format to the parsing system for each of these file name extensions. The user must also ensure that the file name extension of the new file format is a member of the file-type inclusion list. The file-type inclusion list specifies which files that are crawled, based on their file name extensions. The system will only consider the new file format after a restart of the content processing components
    • The example for our scenario would be something like this:-
    New-SPEnterpriseSearchFileFormat -SearchApplication $ssa -FormatId dwg -FormatName DWGFiles -MimeType application/dwg
    • Then, we restarted the SharePoint Search Host controller service on the machine where you have installed the iFilter and this resolved our issue and we were able to successfully search with .dwg files using the custom iFilter.
    i am not quite sure if search treating your file as an XML file, if it is true, perhaps you can check this xmlmapper:http://msdn.microsoft.com/en-us/library/ff795813(v=office.14).aspx
    Regards,
    Aries
    Microsoft Online Community Support
    Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread.

  • How to debug a custom doclet

    Hi,
    Can an incorrect taglet name cause javadoc generation to crash/ hang?
    We have a custon taglet with the name of @abc.comment
    However, someone added a period at the end of the name by mistake: @abc.comment.
    This caused the cruise control build to crash...
    Any clues on why this would have happened would be helpful. Also, how do you debug a custom doclet?
    Thanks in advance.
    BB

    Also, how do you debug a custom doclet?Well, the usual way: you use a debugger ;-)
    Since Javadoc features a programmatic interface, it's easy to write a simple main class.
    Here is my test entry class, just replace "your.doclet.name.here" with the actual name of your custom doclet.
    TestRun requires a filename as sole argument/cmd option, this filename should point to a standard Javadoc options file. To successfully use TestRun, the classes that make up your custom doclet and the JDK tools.jar should (probably) be in the classpath.
    * @(#) TestRun.java 1.00
    import java.io.BufferedReader;
    import java.io.FileReader;
    import java.io.IOException;
    import java.util.StringTokenizer;
    * <code>TestRun</code>
    * @author Thomas Behr 27.11.2003
    public class TestRun
        public static void main( final String[] args )
            if ( args.length != 1 || !(new java.io.File( args[0] )).isFile() )
                System.err.println( "usage: java TestRun <filename>" );
                return;
            com.sun.tools.javadoc.Main.execute( "javadoc",
                                                "your.doclet.name.here",
                                                processOptionsFile( args[0] ) );
        private static String[] processOptionsFile( final String filename )
            final String options = readOptionsFile( filename );
            final StringTokenizer tokens = new StringTokenizer( options );
            final String[] jargs = new String[tokens.countTokens()];
            for ( int i = 0; i < jargs.length; ++i )
                jargs[i] = tokens.nextToken();
            return jargs;
        private static String readOptionsFile( final String filename )
            final StringBuffer buffer = new StringBuffer();
            BufferedReader br = null;
            try
                br = new BufferedReader( new FileReader( filename ) );
                String line;
                while ( (line = br.readLine()) != null )
                    buffer.append( line ).append( "\n" );
            catch ( final IOException ioe )
                ioe.printStackTrace();
                buffer.setLength( 0 );
            finally
                if ( br != null )
                    try
                        br.close();
                    catch ( IOException ioe )
                        ioe.printStackTrace();
            return buffer.toString();
    }

  • Facing Problem while Debugging a custom report using LDB

    Hi Gurus,
    I have requirement to modify a custom report program related to FI. This program used Logical database ZDF ( Copied original DDF) for data fetching.
    when i am trying to see the data in debugging mode, its not allowing to check in start-of-selection event. only in the initialization & end-of-selection i could able to debug.
    when i put breakpoint in initialization, it is allowing to see the flow till a Get Event occurs in the code, once a Get event occur the debugger is coming out and displaying the report.
    If anybody faced this kind of problem when debugging a report using LDB, please share how you resolved it. If there are any other ways to debug a program of this kind please help me.
    Thanks,
    Nanda

    Hi Amith,
    I checked that way also, i put break point in database program of the copied LDB, but its not allowing to check the flow in that program also.
    Please suggest any other ways.
    Thanks,
    Nanda

  • Error in Debugging a Custom Planning Function

    Hi All,
    I have a custom Planning function which is an ABAP code. I wanted to test the planning function and hence i set a breakpoint at the first line of the code. But when i execute the program RSPLS_PLSEQ_EXECUTE to debug my planning function, once i give the planning sequence and press F8, it gives an error instead of pointing to the breakpoint i set. Please help me out. Any pointers over this are greatly appreciated.
    Thanks
    Swaroop

    Hi Swaroop,
    take a look at RSPLS_PLSEQ_EXECUTE in transaction SE38. You will see the following line of code
    PERFORM execute_plseq  TABLES g_t_return USING seqnm variant.
    . Set a break-point here and execute the report. The debugger will stop at the above mentioned line. Press F6 to execute the statement and than double click on g_t_return. This table contains the messages. Please take a look at them. You can see the technical name of the message. To see them in a more readable format you can use transaction SE91.
    Regards Matthias Nutt
    SAP Consulting Switzerland

  • How to debug a custom field on the screen.

    Hi All!
    I had created a custom field on the SAPMV45A screen no. 4459.Now if the user inputs data on the field through VA03 the values should update the corresponding tables.
    But my field is not getting updated in the respective table.Now how to get this debugged.I had handled this field through corresponding user exits.
    Please advise.
    Regards
    Praneeth.

    Hi praneeth,
    1. User-exit will only give
       pre-defined inputs.
    2. in debugging mode, try this out.
       in the same format.
      where programname = your programname of transaction
           fieldname   = fieldname on screen(struct-fieldname)
    (programname)fieldname
    regards,
    amit m.

  • To debug a customer exit

    hi guys,
    how do i debug a variable customer exit,
    i hve been to the particular include program,
    do i just put a break-point on the variable
    i want to look at.... or some infinite loop ?
    thanks
    your help will be greatly appreciated

    Just put a external breakpoint on ur code on i_vnam.
    Now when u run ur query it will go to debugger directly first for i_step = 1, then it will pop-up selection screen for u. Once you enter value to selection screen, it will go back to debugeer for i_step = 2.
    When u r debugging use F5 for each variable, and once u on last line of code, use F8, so that it will no go to debug system code. If you familiar with ABAP debugging it won't be a problem i hope.
    Best of luck with ur debugging.
    KJ!!!

  • Debugging entitlement custom library

    I am building a custom library for an entitled iOS viewer. I need to debug it, but it looks that in order to debug it on safari I need to build the viewer with a developer certificate.
    The dps builder app doesn't let me build the viewer for enterprise distribution with a developer certificat, but only with the distribution one.
    I Have tried to build the viewer without enterprise distribution, using a developer certificate, but then the entitlement didn't work and no folios were showing.
    Is there a solution for my case?

    Actually the problem is that when I build the viewer for enterprise distribution, I can't debug it, but the application works fine I can see all the folios.
    But when I build it with a Developer Certificate, I can debug it in Safari but the library is empty, in fact if I type adobeDPS.libraryService.folioMap.internal is empty.
    nothing change between the two apps, only the first one is built for enterprise distribution, the second is built for development distribution.
    I can see both asking my server for entitlement with se same parameters
    https://mdm.mediacross.it/dps/resources/api/entitlements?authToken=3ec69f38267b177192c129f 588360883&appId=it.mediacross.…
    https://mdm.mediacross.it/dps/resources/api/entitlements?authToken=3ec69f38267b177192c129f 588360883&appId=it.mediacross.…
    very weird

  • Debugging a Customer Function

    Hi Seniors,
    There is an implementation of a function module exit " EXIT_SAPLEINM_002" from the project "MM06E001". This will be called in the execution of another function module in a custom program. As we dubug the program, the debugger stops at the break point of the statement " Customer Function '002' , but does not go into it. What are the ways we can debug a function module exit.
    Thank you,
    Chaitanya
    Edited by: C N Chaitanya on Nov 8, 2011 10:10 PM

    Hi Chaitanya,
    In transaction CMOD create a Z project and inside that Z project assign enhancement "MM06E001". and activate.
    After activation of project it will execute your code in exit EXIT_SAPLEINM_002.
    Thanks,
    Vijay

  • Debugging and customizing Monitoring tool

    Hello ,
    In the End user perspective ,do we have any monitoring tools that with very less basics of XI idea,th end user can monitor or keep track of the message flow
    And can we customize the monitor tools for XI...can we add debugging the message flow .
    Any valuable inuts.

    U may expose the monitoring functionality as a Webservice and then provide its access to the end-users.
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/909760cb-0ec8-2a10-4a96-ee8417acfbc9
    Regards,
    Prateek

  • Debugging custom viewer with Safari

    I'm trying to use the Safari dev-tools to debug the custom viewer/storefront I'm currently building but it isn't working. I have read that it should be possible to do this?
    I have enabled the "Web Inspector"-option in IOS but Safari only gives me "No inspectable applications". I'm running an iPad with ios 7.1.1, OSX 10.9.2 with Safari 7.0.3. What am I missing?

    I'm using Safari 7.0.3 with the newest DPS App Builder tools on latest Mac OSX and it works. But just with the development version! Not the distribution app.
    Try plugging and unplugging the iPad. Close all other apps that might interfere. IF this doesn't help maybe try it with another iPad ( I guess you already did it, so I think it might either be the app or your mac)

  • Enhancement-ABAP Code-Customized Field issue

    Hi Experts,
    Currently I am working on the BW3.5 version. We are using the standard SRM standard extractor 0BBP_TD_SC_1 and we enhance same extractor(populate the filed through CMOD - ABAP Code) with one customized field also. We are having issue on the customized field data which post from SRM system. I have verified the field value and value is fine in RSA3 in SRM source system. But while posting into the BW(PSA itself), its loading correct & wrong value. When i check the PSA for the particular load, It looks little strange. In the PSA, I can see correct value on my first record of the same SC and then next records has incorrect value of the same SC. Currently I am using the ODS as a data target. So finally i am getting the incorrect value on the customized field.
    Ex Scenario:
    Ex Customized Field: ZORGID
    In SRM source system RSA3 Extractor Checker value:
    Shopping Card No: 100
    Customized Field: ZORGID=1
    Shopping Card No: 200
    Customized Field: ZORGID=2
    In BW posting-PSA:
    Shopping Card No: 100
    Customized Field: ZORGID=2
    Shopping Card No: 200
    Customized Field: ZORGID=2
    At the same time, if i do the selective deletion of the particular Shopping Card or group of SC in BW and do the full repair, then it gets a correct ZORGID=1 for the same Shopping Card.
    I strongly believe, something wrong in the ABAP code. But when we tried to debug the customized filed value in RSA3. The value is fine. so we unable to trace out the issue. Please help me to fix the code. Thanks in advance.
    CMOD ABAP Code:
    *Populate approver ID even though it doesn't require approval this is required to make sure BW reports have restrict access to respective Org Unit approvals only
    IF l_s_bbp_sc-approver_id IS INITIAL AND l_s_bbp_sc-itm_guid IS NOT INITIAL.
    CALL FUNCTION 'Z_BBP_FIRST_APPROVALGET'
    EXPORTING
    iv_header_guid = l_s_bbp_sc-guid
    iv_itm_guid = l_s_bbp_sc-itm_guid
    IMPORTING
    approver_no = l_s_bbp_sc-approver_id
    EXCEPTIONS
    no_data = 1
    OTHERS = 2
    IF sy-subrc 0.
    ENDIF.
    ENDIF.
    To ensure that the Org Unit passed in into the field
    l_s_bbp_sc-zzapprov_orgunit belongs to the Actual Level 1
    Budget Owner and not any other manager such as Added Approver.
    CLEAR : ls_ln_approvers, l_userid, lv_bpartner_guid.
    DATA : lv_f_apprv_part TYPE BU_PARTNER.
    READ TABLE lt_ln_approvers INTO ls_ln_approvers
    WITH KEY INITIAL_INDEX = '0000000001'.
    IF sy-subrc EQ 0.
    MOVE ls_ln_approvers-approval_agent+2(12) TO l_userid.
    CALL FUNCTION 'BP_CENTRALPERSON_GET'
    EXPORTING
    iv_username = l_userid
    IMPORTING
    ev_bu_partner_guid = lv_bpartner_guid
    EXCEPTIONS
    no_central_person = 1
    no_business_partner = 2
    no_id = 3
    OTHERS = 4.
    IF sy-subrc = 0.
    CALL FUNCTION 'BUPA_NUMBERS_GET'
    EXPORTING
    iv_partner_guid = lv_bpartner_guid
    IMPORTING
    ev_partner = lv_f_apprv_part.
    ENDIF.
    ENDIF.
    We get the BP number of the first Budget Owner 1
    Here, we superseed the field l_s_bbp_sc-approver_id
    whereby it may be wrong due to Added Approver.
    IF l_s_bbp_sc-approver_id IS NOT INITIAL.
    IF lv_f_apprv_part IS NOT INITIAL.
    IF l_s_bbp_sc-itm_guid IS NOT INITIAL.
    CALL FUNCTION 'RH_STRUC_GET'
    EXPORTING
    act_otype = 'BP'
    act_objid = lv_f_apprv_part
    act_wegid = 'EBP-UP'
    act_begda = sy-datum
    act_endda = sy-datum
    act_tdepth = 4
    TABLES
    result_tab = lt_result_tab
    EXCEPTIONS
    no_plvar_found = 1
    no_entry_found = 2
    OTHERS = 3
    IF sy-subrc = 0.
    READ TABLE lt_result_tab INTO ls_result_tab WITH KEY
    otype = 'O'.
    IF sy-subrc EQ 0.
    l_s_bbp_sc-zzapprov_orgunit = ls_result_tab-objid.
    ELSE.
    ENDIF.
    ENDIF.
    ENDIF.
    Thanks,
    RR

    Hi Experts,
    Any suggestions. Thanks.
    Thanks,
    RR

  • Log4j not logging messages out to weblogic console for custom automatplugin

    Hi,
    We have a custom automation plugin for the OSM application build 381 in our environment(HP-UX Itanium platform). The plugins are bundled in a single ear application "A.ear" which is a mixed bag of pre-defined automation plugins of type XsltSender, XsltAutomator(both InternalReciever as well ExternalReceiver) as well other custom automators(java). For logging of messages in order to aid debugging of custom automators, we are using a logger "com.xyz.osm.plugin" which is also declared in log4j.xml file that is within omslogging.jar. You must already be aware that the build scripts of assembling, deploying ansd registering plugins also includes omslogging.jar are part of the application ear.
    <category name="com.mtsa.osm.plugin">
    <priority value="debug"/>
    </category>
    Below java code snippet is taken from our custom automation plugin classes indicating how the above logger is being used for printing messages.
    //Declaration
    private static Log log = LogFactory.getLog("com.mtsa.osm.plugin");
    mthod1(){
    log.info("xyz");
    In addition to the above logger, the pre-defined automators XsltSender, XsltReceiver also enable logging from xsl files by making the "log" parameter available. Thus we have lines such as the one below in our xsl files that should print messages to the weblogic console.
    <xsl:variable name="addLog1" select="java:info($log, 'transformSiebelActivationRequest: ***** Starting *****')"/>
    The logger that allows printing of these lines is "com.mslv.oms.automation".
    <category name="com.mslv.oms.automation">
    <priority value="info"/>
    </category>
    These configurations should have ideally allowed one to see messages such as one below getting printed out to weblogic console:
    <16-Mar-2012 8:59:36,931 CDT PM> <INFO> <plugin.XSLTReceiver> <ExecuteThread: '19' for queue: 'oms.automation'> <transformSiebelActivationRequest: ***** Starting *****>
    Unfotunately after having done all the above configuration, we are still unable to see any such log messages in the console apart from those emitting from SOP and from <xsl:message> inserted in java & xsl files respectively.
    I also checked if the log4j sub-system is able to correctly initialize after parsing the log4j.xml. It does and one can confirm it by setting system property log4j.debug=true in setDomainEnv.sh file.
    $$$$$$$$ log4j initialization by application classloader for oms.ear application $$$$$$$$$$$$$$$$$$
    log4j: Trying to find [log4j.xml] using context classloader weblogic.utils.classloaders.GenericClassLoader@1592141 finder: weblogic.utils.classloaders.CodeGenClassFinder@1112e85 annotation: oms@.
    log4j: Using URL [zip:/home/osmwl/bea/user_projects/domains/dev04/servers/osmdev04/tmp/_WL_user/oms/amuube/omslogging.jar!/log4j.xml] for automatic log4j configuration.
    log4j: Preferred configurator class: org.apache.log4j.xml.DOMConfigurator
    log4j: System property is :null
    log4j: Standard DocumentBuilderFactory search succeded.
    log4j: DocumentBuilderFactory is: org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
    $$$$$$$$ log4j initialization by application classloader for custom automation plugin xyz.ear application $$$$$$$$$$$$$$$$$$
    log4j: Trying to find [log4j.xml] using context classloader weblogic.utils.classloaders.GenericClassLoader@1b7a8c5 finder: weblogic.utils.classloaders.CodeGenClassFinder@10bc849 annotation: xyz.ear@.
    log4j: Using URL [zip:/home/osmwl/bea/user_projects/domains/dev04/servers/osmdev04/tmp/_WL_user/xyz.ear/ah0eeq/omslogging.jar!/log4j.xml] for automatic log4j configuration.
    log4j: Preferred configurator class: org.apache.log4j.xml.DOMConfigurator
    log4j: System property is :null
    log4j: Standard DocumentBuilderFactory search succeded.
    log4j: DocumentBuilderFactory is: weblogic.xml.jaxp.RegistryDocumentBuilderFactory
    log4j: debug attribute= "false".
    Ironically, logging levels for loggers defined in log4j.xml of oms.ear could be dynamically changed from log4jAdmin.jsp page and the results are immediately visible. However for some reason, loggers defined in log4j.xml of custom plugin application were completely getting ignored. I don't see any warnings or erro messages in the logs indicating that log4j configuration failed for custom application failed. We want to refrain using SOP and <xsl:message> but I am afraid we have no option other than filling up our sources files with them.
    Bottomline, how do we get application B(which in our case is the custom plugin) to log messaged the console just like that done by application A(oms.ear).
    I am sure OSM developers would like to leverage log4j bundled with OSM SDK to log messages that would aid in trouble-shooting during development cycles. Both application ear files have commons-logging-1.1.jar,log4j-1.2.13.jar, omslogging.jar available in their classpaths. In other words, META-INF/MANIFEST.MF file of oms.war(web module within oms.ear) and xyz.jar(ejb module within xyz.ear) has references to these jars.
    Appreciate if one can reply and let me know if they could get log messages to print from custom plugin.
    Thanks
    Edited by: user3693508 on Mar 18, 2012 11:38 AM

    Hi,
    We have a custom automation plugin for the OSM application build 381 in our environment(HP-UX Itanium platform). The plugins are bundled in a single ear application "A.ear" which is a mixed bag of pre-defined automation plugins of type XsltSender, XsltAutomator(both InternalReciever as well ExternalReceiver) as well other custom automators(java). For logging of messages in order to aid debugging of custom automators, we are using a logger "com.xyz.osm.plugin" which is also declared in log4j.xml file that is within omslogging.jar. You must already be aware that the build scripts of assembling, deploying ansd registering plugins also includes omslogging.jar are part of the application ear.
    <category name="com.mtsa.osm.plugin">
    <priority value="debug"/>
    </category>
    Below java code snippet is taken from our custom automation plugin classes indicating how the above logger is being used for printing messages.
    //Declaration
    private static Log log = LogFactory.getLog("com.mtsa.osm.plugin");
    mthod1(){
    log.info("xyz");
    In addition to the above logger, the pre-defined automators XsltSender, XsltReceiver also enable logging from xsl files by making the "log" parameter available. Thus we have lines such as the one below in our xsl files that should print messages to the weblogic console.
    <xsl:variable name="addLog1" select="java:info($log, 'transformSiebelActivationRequest: ***** Starting *****')"/>
    The logger that allows printing of these lines is "com.mslv.oms.automation".
    <category name="com.mslv.oms.automation">
    <priority value="info"/>
    </category>
    These configurations should have ideally allowed one to see messages such as one below getting printed out to weblogic console:
    <16-Mar-2012 8:59:36,931 CDT PM> <INFO> <plugin.XSLTReceiver> <ExecuteThread: '19' for queue: 'oms.automation'> <transformSiebelActivationRequest: ***** Starting *****>
    Unfotunately after having done all the above configuration, we are still unable to see any such log messages in the console apart from those emitting from SOP and from <xsl:message> inserted in java & xsl files respectively.
    I also checked if the log4j sub-system is able to correctly initialize after parsing the log4j.xml. It does and one can confirm it by setting system property log4j.debug=true in setDomainEnv.sh file.
    $$$$$$$$ log4j initialization by application classloader for oms.ear application $$$$$$$$$$$$$$$$$$
    log4j: Trying to find [log4j.xml] using context classloader weblogic.utils.classloaders.GenericClassLoader@1592141 finder: weblogic.utils.classloaders.CodeGenClassFinder@1112e85 annotation: oms@.
    log4j: Using URL [zip:/home/osmwl/bea/user_projects/domains/dev04/servers/osmdev04/tmp/_WL_user/oms/amuube/omslogging.jar!/log4j.xml] for automatic log4j configuration.
    log4j: Preferred configurator class: org.apache.log4j.xml.DOMConfigurator
    log4j: System property is :null
    log4j: Standard DocumentBuilderFactory search succeded.
    log4j: DocumentBuilderFactory is: org.apache.xerces.jaxp.DocumentBuilderFactoryImpl
    $$$$$$$$ log4j initialization by application classloader for custom automation plugin xyz.ear application $$$$$$$$$$$$$$$$$$
    log4j: Trying to find [log4j.xml] using context classloader weblogic.utils.classloaders.GenericClassLoader@1b7a8c5 finder: weblogic.utils.classloaders.CodeGenClassFinder@10bc849 annotation: xyz.ear@.
    log4j: Using URL [zip:/home/osmwl/bea/user_projects/domains/dev04/servers/osmdev04/tmp/_WL_user/xyz.ear/ah0eeq/omslogging.jar!/log4j.xml] for automatic log4j configuration.
    log4j: Preferred configurator class: org.apache.log4j.xml.DOMConfigurator
    log4j: System property is :null
    log4j: Standard DocumentBuilderFactory search succeded.
    log4j: DocumentBuilderFactory is: weblogic.xml.jaxp.RegistryDocumentBuilderFactory
    log4j: debug attribute= "false".
    Ironically, logging levels for loggers defined in log4j.xml of oms.ear could be dynamically changed from log4jAdmin.jsp page and the results are immediately visible. However for some reason, loggers defined in log4j.xml of custom plugin application were completely getting ignored. I don't see any warnings or erro messages in the logs indicating that log4j configuration failed for custom application failed. We want to refrain using SOP and <xsl:message> but I am afraid we have no option other than filling up our sources files with them.
    Bottomline, how do we get application B(which in our case is the custom plugin) to log messaged the console just like that done by application A(oms.ear).
    I am sure OSM developers would like to leverage log4j bundled with OSM SDK to log messages that would aid in trouble-shooting during development cycles. Both application ear files have commons-logging-1.1.jar,log4j-1.2.13.jar, omslogging.jar available in their classpaths. In other words, META-INF/MANIFEST.MF file of oms.war(web module within oms.ear) and xyz.jar(ejb module within xyz.ear) has references to these jars.
    Appreciate if one can reply and let me know if they could get log messages to print from custom plugin.
    Thanks
    Edited by: user3693508 on Mar 18, 2012 11:38 AM

Maybe you are looking for

  • Security Question: Shared Files on a Network

    Security Question from a Network Newbie Hi: I recently returned from a meeting at a large city hotel.While at the meeting, I used the fancy hotel's hard-wired connection to access the internet. Imagine my surprise when the next morning one of the oth

  • Fetch email address of user responsible in IW32

    How to fetch the email address of User responsible in IW32 transaction? OR What is the logic to get PERSNUMBER of a partner "User responsible"on the basis of work order number?

  • Microsoft DHCP Server - Option 43 Setup

    I have the scope configured properly as far as the 241 Option with Option 43 and the VCI in it for both the 1130 and 1200 series AP's. However, how do you make this work if your subnet has both 1200 and 1130's in it? Basically if I have two 241 optio

  • BW 7.0 Include BI Command for a Hierarchy in URL

    Dear all, following the guidlines at [help sap com |http://help.sap.com/saphelp_nw70/helpdata/EN/43/ef05462480025ae10000000a1553f7/content.htmI] I try to preset variable values using the BI Command. The normal variable values work quite well ../irj/s

  • Batch name change in FCP, possible?

    Hey folks are there any plugins, apps, scripts out there than can facilitate batch renaming of clips in FCP rather than getting it done one file at a time? FYI using FCP 6. I've done some digging around and can find ways to batch rename on the finder