cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1596
Views
5
Helpful
8
Replies

Could not load private-jar in ned citrix-netscaler

Chris Wang
Cisco Employee
Cisco Employee

currently we are using citrix-netscaler 3.0.23 to managed netscaler devices, but meet below exception:

javax.xml.stream.FactoryConfigurationError: Error creating stream factory: java.lang.ClassNotFoundException: de.odysseus.staxon.json.stream.impl.JsonStreamFactoryImpl

 

We try to extrat the private-jar and put the jars into shared-jar folder, it works.

 

Can anyone help why the private-jar is not loaded?

8 Replies 8

joepak
Cisco Employee
Cisco Employee

Hi,

 

your solution is within a later version of citrix ned:

 

Version: 3.0.29
Description:
citrix-netscaler v3.0.29
=====================================

Enhancements:

  - Added 'systemglobal_authenticationlocalpolicy_binding *' configuration
    detailed bellow.
     (CITNET-28 / PS-29590 / RT34527)

  - Enhanced the Yang model with the configuration described bellow.
     (CITNET-29 / PS-29611 / RT34548)

YANG model changes since 3.0.28:

  New nodes:
  /csvserver/authenticationhost
  /csvserver/authnprofile
  /csvserver/authnvsname
  /csvserver/backupip
  /csvserver/backupvserver
  /csvserver/comment
  /csvserver/cookiedomain
  /csvserver/dbprofilename
  /csvserver/dnsprofilename
  /csvserver/domainname
  /csvserver/httpprofilename
  /csvserver/listenpriority
  /csvserver/mssqlserverversion
  /csvserver/mysqlcharacterset
  /csvserver/mysqlprotocolversion
  /csvserver/mysqlservercapabilities
  /csvserver/mysqlserverversion
  /csvserver/netprofile
  /csvserver/newname
  /csvserver/oracleserverversion
  /csvserver/persistenceid
  /csvserver/pushvserver
  /csvserver/redirecturl
  /csvserver/sobackupaction
  /csvserver/sothreshold
  /csvserver/state
  /csvserver/targettype
  /csvserver/tcpprofilename
  /csvserver/vipheader
  /csvserver_domain_binding
  /csvserver_domain_binding/backupip
  /csvserver_domain_binding/cookiedomain
  /csvserver_domain_binding/cookietimeout
  /csvserver_domain_binding/domainname
  /csvserver_domain_binding/sitedomainttl
  /csvserver_domain_binding/ttl
  /gslbservice
  /gslbservice/appflowlog
  /gslbservice/cip
  /gslbservice/cipheader
  /gslbservice/clttimeout
  /gslbservice/cnameentry
  /gslbservice/comment
  /gslbservice/cookietimeout
  /gslbservice/downstateflush
  /gslbservice/hashid
  /gslbservice/healthmonitor
  /gslbservice/ip
  /gslbservice/ipaddress
  /gslbservice/maxaaausers
  /gslbservice/maxbandwidth
  /gslbservice/maxclient
  /gslbservice/monitor_name_svc
  /gslbservice/monthreshold
  /gslbservice/naptrdomainttl
  /gslbservice/naptrorder
  /gslbservice/naptrpreference
  /gslbservice/naptrreplacement
  /gslbservice/naptrservices
  /gslbservice/newname
  /gslbservice/port
  /gslbservice/publicip
  /gslbservice/publicport
  /gslbservice/servername
  /gslbservice/servicetype
  /gslbservice/sitename
  /gslbservice/sitepersistence
  /gslbservice/siteprefix
  /gslbservice/state
  /gslbservice/svrtimeout
  /gslbservice/viewip
  /gslbservice/viewname
  /gslbservice/weight
  /gslbsite
  /gslbsite/backupparentlist
  /gslbsite/clip
  /gslbsite/metricexchange
  /gslbsite/naptrreplacementsuffix
  /gslbsite/nwmetricexchange
  /gslbsite/parentsite
  /gslbsite/publicclip
  /gslbsite/publicip
  /gslbsite/sessionexchange
  /gslbsite/siteipaddress
  /gslbsite/sitetype
  /gslbsite/triggermonitor
  /gslbvserver
  /gslbvserver/appflowlog
  /gslbvserver/backupip
  /gslbvserver/backuplbmethod
  /gslbvserver/backupsessiontimeout
  /gslbvserver/backupvserver
  /gslbvserver/comment
  /gslbvserver/considereffectivestate
  /gslbvserver/cookie_domain
  /gslbvserver/cookietimeout
  /gslbvserver/disableprimaryondown
  /gslbvserver/dnsrecordtype
  /gslbvserver/domainname
  /gslbvserver/dynamicweight
  /gslbvserver/ecs
  /gslbvserver/ecsaddrvalidation
  /gslbvserver/edr
  /gslbvserver/iptype
  /gslbvserver/lbmethod
  /gslbvserver/mir
  /gslbvserver/netmask
  /gslbvserver/newname
  /gslbvserver/persistenceid
  /gslbvserver/persistencetype
  /gslbvserver/persistmask
  /gslbvserver/servicename
  /gslbvserver/servicetype
  /gslbvserver/sitedomainttl
  /gslbvserver/sobackupaction
  /gslbvserver/somethod
  /gslbvserver/sopersistence
  /gslbvserver/sopersistencetimeout
  /gslbvserver/sothreshold
  /gslbvserver/state
  /gslbvserver/timeout
  /gslbvserver/ttl
  /gslbvserver/v6netmasklen
  /gslbvserver/v6persistmasklen
  /gslbvserver/weight
  /gslbvserver_domain_binding
  /gslbvserver_domain_binding/backupip
  /gslbvserver_domain_binding/backupipflag
  /gslbvserver_domain_binding/cookie_domain
  /gslbvserver_domain_binding/cookie_domainflag
  /gslbvserver_domain_binding/cookietimeout
  /gslbvserver_domain_binding/domainname
  /gslbvserver_domain_binding/sitedomainttl
  /gslbvserver_domain_binding/ttl
  /gslbvserver_gslbservice_binding
  /gslbvserver_gslbservice_binding/domainname
  /gslbvserver_gslbservice_binding/weight
  /ntpsync/state
  /policyexpression
  /policyexpression/clientsecuritymessage
  /policyexpression/comment
  /policyexpression/description
  /policyexpression/type
  /policyexpression/value
  /systemglobal_authenticationlocalpolicy_binding
  /systemglobal_authenticationlocalpolicy_binding/priority

  Changed nodes:
  /nsip/vserverrhilevel
  /nsip6/vserverrhilevel
  /nsrpcnode/srcip
  /systemglobal_authenticationtacacspolicy_bindin

A similar issue was found in our internal database and it states 3.0.29 resolved this issue.

Hi,

Where can I see the NSO and ned's release notes? As you see, all the fixes we're not aware.

Hi Chris,

My bad. The specific NED that fixes it is:

Version: 3.0.28

Description:

citrix-netscaler v3.0.28

=====================================



Enhancements:
- Updated the LICENSE file and removed the private-jar/commons-codec.jar lib.
(CITNET-15)
- Replaced json.org.jar with json-20171018.jar.
(CITNET-16)
- Expanded the Yang file with the configuration as below.

(CITNET-17 / RT33629)

I tried version citrix-netscaler 3.0.28, another issue occurred.

 

ncsadmin@ncs# devices device NS-LAB connect
result false
info Failed to connect to device NS-LAB: connection refused: INSTANCE

 

And I checked the log, it shows the ssl connect have error, seems the http ssl lib could not be loaded.

 

<ERROR> 05-Mar-2019::05:15:03.616 NedWorker Ned-Worker-Thread-0: - Error in connect
java.lang.NoSuchFieldError: INSTANCE
at org.apache.http.conn.ssl.SSLConnectionSocketFactory.<clinit>(SSLConnectionSocketFactory.java:144)
at com.tailf.packages.ned.citrixnetscaler.RESTConnection.doConnect(RESTConnection.java:143)
at com.tailf.packages.ned.citrixnetscaler.RESTConnection.<init>(RESTConnection.java:120)
at com.tailf.packages.ned.citrixnetscaler.CitrixNetscalerNedGeneric.<init>(CitrixNetscalerNedGeneric.java:832)
at com.tailf.packages.ned.citrixnetscaler.CitrixNetscalerNedGeneric.newConnection(CitrixNetscalerNedGeneric.java:1787)
at com.tailf.ned.NedWorker.dorun(NedWorker.java:1458)
at com.tailf.ned.NedWorker.run(NedWorker.java:294)
<INFO> 05-Mar-2019::05:15:03.616 NedWorker Ned-Worker-Thread-0: - Sending={ned_error,ned_connect,econnrefused,#Bin<<INSTANCE>>}

I assume you recompiled the new ned via make clean all and then reloaded the packages and tried to connect/sync-from to the device, right?

Can you connect to any other citrix devices? This may be a NED issue, but i'd suggest trying the latest citrix NED first to verify if it is reproduced or have been fixed.

I checked our database for that exact error, there was 2 instances of a similar error which both resulted in BU escalation.

1st one: Ned enhanced for jar versions/files
2nd one: incompatible/deprecated device attempted to be connected. (that's why i asked to see if the issue occurs with all citrix devices).

I believe this may require escalation, but first test out the latest ned. See if this issue is reproduced on netsim as a simple test so that we (TAC) can reproduce it locally if possible since we do not have a citrix device at hand.

none of the netscaler devices could be manged due to the issue. And I tried 4.2 and 3.0.28 as well as 3.0.29, the same issue.
Other neds like cisco-ios... could work well.

We find out an work round to managed the netscaler devices, but need to do more test. we move the "staxon-1.3.jar" in folder private-jar to NSO's java/jar folder. And the citrix-netscaler version is :3.0.23

For this issue, I'd recommend requesting a NED enhancement. Providing all the data you observed and the workaround that worked. I imagine this may be a fix that'll be required in the future since you may need an NED update and would require to manually workaround your issue.

Was your issue resolved?