1 2 3 4 Previous Next 49 Replies Latest reply on Aug 7, 2018 7:19 PM by Pradeep Kumar Go to original post
      • 31. Re: Attachments integration between Service now and Remedy
        Suresh Loganathan

        Hi Lj,

         

        I have implemented the plugin into server. While calling the plugin into Vendor form the plugin is not visible to the form. It gives an error like below. Server Version is 7.6.04 SP5. I have followed steps as you recommended in the read me file.

         

        can you please advise our server will support this plugin?Please advise.

         

        2018-06-16 00:10:29,061 ERROR [main] com.bmc.arsys.pluginsvr.plugins.g (?:?) -

        Message not in catalog; Message number = 8756 Plugin: APL.ARDBC.RESTFULARDBCPLUGIN

        java.lang.UnsupportedClassVersionError: com/apl/RestfulARDBCPlugin : Unsupported major.minor version 51.0

                at java.lang.ClassLoader.defineClass1(Native Method)

                at java.lang.ClassLoader.defineClassCond(ClassLoader.java:631)

                at java.lang.ClassLoader.defineClass(ClassLoader.java:615)

                at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:141)

                at java.net.URLClassLoader.defineClass(URLClassLoader.java:283)

                at java.net.URLClassLoader.access$000(URLClassLoader.java:58)

                at java.net.URLClassLoader$1.run(URLClassLoader.java:197)

                at java.security.AccessController.doPrivileged(Native Method)

                at java.net.URLClassLoader.findClass(URLClassLoader.java:190)

                at com.bmc.arsys.pluginsvr.plugins.e.loadClass(Unknown Source)

                at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

                at java.lang.Class.forName0(Native Method)

                at java.lang.Class.forName(Class.java:247)

                at com.bmc.arsys.pluginsvr.plugins.g.a(Unknown Source)

                at com.bmc.arsys.pluginsvr.plugins.g.loadClass(Unknown Source)

                at com.bmc.arsys.pluginsvr.plugins.g.a(Unknown Source)

                at com.bmc.arsys.pluginsvr.plugins.g.initializeJavaPlugins(Unknown Source)

                at com.bmc.arsys.pluginsvr.ARPluginServerMain.main(Unknown Source)

        2018-06-16 00:10:29,064 ERROR [main] com.bmc.arsys.pluginsvr.plugins.g (?:?) - Failed  to call init plugin APL.ARDBC.RESTFULARDBCPLUGIN

        -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

        java version "1.7.0_75"

        OpenJDK Runtime Environment (rhel-2.5.4.0.el5_11-x86_64 u75-b13)

        OpenJDK 64-Bit Server VM (build 24.75-b04, mixed mode)

         

        Regards,

        Suresh Loganathan

        • 32. Re: Attachments integration between Service now and Remedy
          Suresh Loganathan

          Do i have any update on my queries. Please advise.

           

          Regards,

          Suresh Loganathan.

          • 33. Re: Attachments integration between Service now and Remedy
            LJ LongWing

            Suresh,

            The error in question is a Java error saying that the Java being used is not the minimum version necessary.  The plugin requires Java 7, but I suspect that your plugin server is not using Java 7...

            • 34. Re: Attachments integration between Service now and Remedy
              Suresh Loganathan

              Hi LJ,

               

              Thanks for your email. I have checked in armonitor.conf Existing plugin is using jdk1.6.0_26. In server directory java 1.7 is available with the below location.

               

              /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75.x86_64/jre/bin/java.

               

              I have used this path and configured like below.

               

              /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75.x86_64/jre/bin/java -Xmx512m -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv6Addresses=false -classpath /opt/arsv7/ARSystem/pluginsvr:/opt/arsv7/ARSystem/pluginsvr/pluginsvr_java7/APLRestfulARDBCPlugin.jar com.bmc.arsys.pluginsvr.ARPluginServerMain -x arsltest -i /opt/arsv7/ARSystem

              /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75.x86_64/jre/bin/java -Xmx512m -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv6Addresses=false -classpath /opt/arsv7/ARSystem/pluginsvr:/opt/arsv7/ARSystem/pluginsvr/pluginsvr_java7/jackson-core-2.8.1.jar com.bmc.arsys.pluginsvr.ARPluginServerMain -x arsltest -i /opt/arsv7/ARSystem

              /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75.x86_64/jre/bin/java -Xmx512m -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv6Addresses=false -classpath /opt/arsv7/ARSystem/pluginsvr:/opt/arsv7/ARSystem/pluginsvr/pluginsvr_java7/jackson-databind-2.8.5.jar com.bmc.arsys.pluginsvr.ARPluginServerMain -x arsltest -i /opt/arsv7/ARSystem

              /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.75.x86_64/jre/bin/java -Xmx512m -Djava.net.preferIPv4Stack=true -Djava.net.preferIPv6Addresses=false -classpath /opt/arsv7/ARSystem/pluginsvr:/opt/arsv7/ARSystem/pluginsvr/pluginsvr_java7/jackson-annotations-2.8.0.jar com.bmc.arsys.pluginsvr.ARPluginServerMain -x arsltest -i /opt/arsv7/ARSystem

               

              Finally, restarted the server. Still getting the error like

               

              ARERR [8760] Cannot establish a network connection to the AR System Plug-In server : Server Name(6207) APL.ARDBC.RESTFULARDBCPLUGIN : RPC: Miscellaneous tli error - System error (Connection refused).

               

              Can you please advise to resolve this issue?

               

              Regards,

              Suresh Loganathan.

              • 35. Re: Attachments integration between Service now and Remedy
                LJ LongWing

                So, that's an error stating that the plugin server is unreachable...you'll want to check the arjavaplugin.log (or other if you didn't use the default plugin server) as well as the stdout and stderr logs to see why the plugin server didn't start.

                • 36. Re: Attachments integration between Service now and Remedy
                  Suresh Loganathan

                  Hi LJ,

                   

                  Thanks for your response. I have resolved the issue. It was happends due to filepath from armonitor.conf file. I can able to create the vendor form and call the table entry (APL:RestflVendorForms:Table).

                   

                  In the URL field (APL:RestflVendorForms:Table), i have used the service now target URL ie., http://devinstance.service-now.com/ecc_queue.do. and created a body template as

                  -----------------------------

                  Create Body Template:

                  -----------------------------

                  --W3NByNRZZYy4ALu6xeZzvWXU3NVmYUxoRB

                  Content-Disposition: form-data; name="entry"

                  Content-Type: application/json; charset=UTF-8

                  Content-Transfer-Encoding: 8bit

                   

                  "agent":"AttachmentCreator",

                  "topic":"AttachmentCreator",

                  "payload":"test data from Remedy end",

                  "source":"incident:ba9b68a9db7a53803502fd431d96193d",

                  "queue":"input",

                  "state":"ready"

                  }

                  --W3NByNRZZYy4ALu6xeZzvWXU3NVmYUxoRB

                  Content-Disposition: form-data; name="attach-Attachment"; filename="|ROOT:entries:values:Attachment:name|"

                  Content-Type: application/octet-stream

                  Content-Transfer-Encoding: Base64

                   

                  |MyAttachmentElement|

                  --W3NByNRZZYy4ALu6xeZzvWXU3NVmYUxoRB--

                   

                  Entered the all details and try to send the above data via - APL:RestflVendorForms:Table .Can you please advise to resolve and test the dummy data.

                   

                  ----------------

                  Error Details:

                  -----------------

                  2018-06-20 07:44:44,954 ERROR [pool-2-thread-2] com.bmc.arsys.pluginsvr.plugins.ARPluginContext (?:?) - <APL.ARDBC.RESTFULARDBCPLUGIN>Exception adding body to connection: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

                  2018-06-20 07:44:44,970 ERROR [pool-2-thread-5] com.bmc.arsys.pluginsvr.plugins.ARPluginContext (?:?) - <APL.ARDBC.RESTFULARDBCPLUGIN>Entry ID is not in correct format, Entry ID being searched for is '3'

                  2018-06-20 07:44:50,651 ERROR [pool-2-thread-2] com.bmc.arsys.pluginsvr.plugins.ARPluginContext (?:?) - <APL.ARDBC.RESTFULARDBCPLUGIN>IOException connecting to URL: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

                  2018-06-20 07:44:50,654 ERROR [pool-2-thread-2] com.bmc.arsys.pluginsvr.plugins.a (?:?) - getListEntryWithFields() FAILs in plugin: APL.ARDBC.RESTFULARDBCPLUGIN

                  java.lang.NoClassDefFoundError: java/util/Base64

                          at com.apl.Functions.serializeEntryObject(Functions.java:679)

                          at com.apl.RestfulARDBCPlugin.manageCacheEntry(RestfulARDBCPlugin.java:2281)

                          at com.apl.RestfulARDBCPlugin.generateErrorEntryList(RestfulARDBCPlugin.java:1687)

                          at com.apl.RestfulARDBCPlugin.makeRestCall(RestfulARDBCPlugin.java:2117)

                          at com.apl.RestfulARDBCPlugin.getListEntryWithFields(RestfulARDBCPlugin.java:818)

                          at com.bmc.arsys.pluginsvr.plugins.a.ArdbcGlewf(Unknown Source)

                          at com.bmc.arsys.pluginsvr.a.ArEsArdbcGlewf_5(Unknown Source)

                          at com.bmc.arsys.pluginsvr.a.ArEsArdbcGlewf_4(Unknown Source)

                          at com.bmc.arsys.arrpc.ARPluginServerDispatcher.dispatchOncRpcCall(Unknown Source)

                          at com.bmc.arsys.arrpc.nio.ArRpcCallHandler.dispatchCall(Unknown Source)

                          at com.bmc.arsys.arrpc.nio.ArRpcCallHandler.if(Unknown Source)

                          at com.bmc.arsys.arrpc.nio.ArRpcCallHandler.processRpcCall(Unknown Source)

                          at com.bmc.arsys.arrpc.nio.ArRpcCallHandler$Processor.run(Unknown Source)

                          at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

                          at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

                          at java.lang.Thread.run(Thread.java:745)

                   

                   

                  Regards,

                   

                  Suresh Loganathan.

                  • 37. Re: Attachments integration between Service now and Remedy
                    Suresh Loganathan

                    Mainly, getting 2 errors.

                     

                    1. java.lang.NoClassDefFoundError: java/util/Base64

                    2. Entry ID is not in correct format, Entry ID being searched for is '3'

                     

                    2018-06-20 09:49:57,859 ERROR [pool-2-thread-2] com.bmc.arsys.pluginsvr.plugins.ARPluginContext (?:?) - <APL.ARDBC.RESTFULARDBCPLUGIN>Entry ID is not in correct format, Entry ID being searched for is '3'

                    2018-06-20 10:46:07,056 ERROR [pool-2-thread-1] com.bmc.arsys.pluginsvr.plugins.ARPluginContext (?:?) - <APL.ARDBC.RESTFULARDBCPLUGIN>Exception adding body to connection: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

                    2018-06-20 10:46:07,089 ERROR [pool-2-thread-2] com.bmc.arsys.pluginsvr.plugins.ARPluginContext (?:?) - <APL.ARDBC.RESTFULARDBCPLUGIN>Entry ID is not in correct format, Entry ID being searched for is '3'

                     

                    Regards,

                    Suresh Loganathan.

                    • 38. Re: Attachments integration between Service now and Remedy
                      LJ LongWing

                      Suresh,

                      The Entry ID error is likely related to not mapping the Entry ID of the Vendor form with the plugin element for the plugin controlled EntryID, this is necessary for proper utilization.

                      Regarding the Base64.  Through some research I just did I found that the method I'm using in that part of the code is only available to Java 8, in an effort to maintain the Java 7 compatibility I'm trying something slightly different that is supposed to work....please check it out and let me know

                      • 39. Re: Attachments integration between Service now and Remedy
                        Suresh Loganathan

                        Hi LJ,

                         

                        Sorry for the delay response. I have tried below steps to execute the output.

                         

                        1.Created a sample Regular form.

                        2. configured the above mentioned form into APL:RestfulVendorForms:Table.

                        3. Chosen - Create Method - POST and gave the body template as {"agent":"SIAM", "topic":"AttachmentCreator", "name":"Test.txt", "source":"incident:ba9b68a9db7a53803502fd431d96193d","state":"ready"}

                        4. Specified the URL as https://instancename.service-now.com/ecc_queue.do.

                        5. Created Field mapping like below:

                        MyAttachmentElement

                        ROOT:result:agent

                        ROOT:result:name

                        ROOT:result:payload

                        ROOT:result:source

                        ROOT:result:state

                        ROOT:result:topic -- and set as YES to Append to CREATE URL, Append to Set URL

                        6. Configured basic authentication - User Name and Password.Record  Indicator configured as "Root:entries:"

                        7. Created vendor form with the above entry (from APL:RestfulVendorForms:Table - Sample Regular Form)and Entry ID as a Key Field.

                        8. Once vendor table created,  I trying to create an entry into vendor table then it says an error like below

                        ARERR [8790] Message not in catalog; Message number = 8790 : Failed : HTTP error code : 200 Method: PUT - OK - URL: https://iag1dev.service-now.com/ecc_queue.do Ie., Here, POSTing the value from Remedy to ServiceNow.

                         

                         

                        Can you please help me to resolve this issue?

                         

                        Regards,

                         

                        Suresh Loganathan.

                        • 40. Re: Attachments integration between Service now and Remedy
                          LJ LongWing

                          That's a simple one....you are doing a PUT, which is accepted by the remote location, you can tell because of the 'OK' message, but your PUT is not expecting a 200 it's expecting something else...so, all you need to do is tell that PUT command to expect a 200 response from the remote system and you should be good.

                          • 41. Re: Attachments integration between Service now and Remedy
                            Suresh Loganathan

                            Sorry LJ. Little confused. Can you please help me to understand. What i need to do to resolve the issue.

                            • 42. Re: Attachments integration between Service now and Remedy
                              LJ LongWing

                              Within your Table record, you specify a method and an expected return result, if you don't specify either, there are defaults.....I assume you are using the default....so, if you are doing a 'CREATE' on your vendor form, you have provided a method for that create...did you specify an expected http return code?...if not, specify 200 because that's what your service is returning.

                              • 43. Re: Attachments integration between Service now and Remedy
                                Suresh Loganathan

                                Thanks LJ. I got your point. PFB. I have used below setp into the form and used the response code as 200 for POST Method. But, 201 code for "CREATE" option from Remedy. I have refered the below link to refer the response code of Remedy. Both (Remedy , Service Now) showing response code as 201 for creation. If I use 200 it doesnt showing an error instead 201.

                                 

                                What do the HTTP results codes in web server logs mean

                                 

                                 

                                I have tried to create an entry from Vendor form and attached a test file then clicked a SAVE button.It's allowing to save and tried to see the APLPlugin.log file and ECC queue from Service now. ECC Queue -It doesnt contain a entry and the APLPlugin.log files are showing like below errors.

                                 

                                2018-07-18 10:54:39,861 ERROR [pool-2-thread-4] com.bmc.arsys.pluginsvr.plugins.ARPluginContext (?:?) - <APL.ARDBC.RESTFULARDBCPLUGIN>JsonParseException parsing JSON: Unexpected character ('<' (code 60)): expected a valid value (number, String, array, object, 'true', 'false' or 'null')

                                at [Source: java.io.InputStreamReader@6f194580; line: 1, column: 2]

                                2018-07-18 10:55:22,536 ERROR [pool-2-thread-3] com.bmc.arsys.pluginsvr.plugins.a (?:?) - setEntry() FAILs in plugin: APL.ARDBC.RESTFULARDBCPLUGIN

                                java.lang.NullPointerException

                                        at com.apl.RestfulARDBCPlugin.setEntry(RestfulARDBCPlugin.java:1487)

                                        at com.bmc.arsys.pluginsvr.plugins.a.ArdbcSet(Unknown Source)

                                        at com.bmc.arsys.pluginsvr.a.ArEsArdbcSet_5(Unknown Source)

                                        at com.bmc.arsys.pluginsvr.a.ArEsArdbcSet_4(Unknown Source)

                                        at com.bmc.arsys.arrpc.ARPluginServerDispatcher.dispatchOncRpcCall(Unknown Source)

                                        at com.bmc.arsys.arrpc.nio.ArRpcCallHandler.dispatchCall(Unknown Source)

                                        at com.bmc.arsys.arrpc.nio.ArRpcCallHandler.if(Unknown Source)

                                        at com.bmc.arsys.arrpc.nio.ArRpcCallHandler.processRpcCall(Unknown Source)

                                        at com.bmc.arsys.arrpc.nio.ArRpcCallHandler$Processor.run(Unknown Source)

                                        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

                                        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)

                                        at java.lang.Thread.run(Thread.java:745)

                                 

                                If possible can we go for web ex depends on your free time. Please confirm.

                                 

                                Regards,

                                 

                                Suresh Loganathan.

                                • 44. Re: Attachments integration between Service now and Remedy
                                  LJ LongWing

                                  Ok...there are a few problems here....you say you are doing a create....but the log is showing an error in the 'setEntry' method, which is not a create, but a modify of an existing record....so, the log snipit you are providing isn't from the create.  Additionally, your table is showing that you are using JSON, but the error is

                                  Unexpected character ('<'

                                  So....that setField is expecting something JSON, but looks like it might be getting XML?...and I don't see that you have a SET method defined, so it'll use a default, and I see you don't have a body defined....so, what you are saying is happening is not what your log is showing....so you need to figure out where that set is taking place from.