{"action":"created","issue":{"url":"https://api.github.com/repos/capitalone/Hygieia/issues/335","repository_url":"https://api.github.com/repos/capitalone/Hygieia","labels_url":"https://api.github.com/repos/capitalone/Hygieia/issues/335/labels{/name}","comments_url":"https://api.github.com/repos/capitalone/Hygieia/issues/335/comments","events_url":"https://api.github.com/repos/capitalone/Hygieia/issues/335/events","html_url":"https://github.com/capitalone/Hygieia/issues/335","id":134069030,"number":335,"title":"JIRA feature collector failure - Need help !","user":{"login":"gitfan89","id":16448916,"avatar_url":"https://avatars.githubusercontent.com/u/16448916?v=3","gravatar_id":"","url":"https://api.github.com/users/gitfan89","html_url":"https://github.com/gitfan89","followers_url":"https://api.github.com/users/gitfan89/followers","following_url":"https://api.github.com/users/gitfan89/following{/other_user}","gists_url":"https://api.github.com/users/gitfan89/gists{/gist_id}","starred_url":"https://api.github.com/users/gitfan89/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gitfan89/subscriptions","organizations_url":"https://api.github.com/users/gitfan89/orgs","repos_url":"https://api.github.com/users/gitfan89/repos","events_url":"https://api.github.com/users/gitfan89/events{/privacy}","received_events_url":"https://api.github.com/users/gitfan89/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":14,"created_at":"2016-02-16T19:04:23Z","updated_at":"2016-04-29T14:37:41Z","closed_at":null,"body":"Hi ,\r\n\r\nWhile  trying to get the JIRA connector to work I’m facing below error \r\n\r\n2016-02-16 12:07:00,101 ERROR o.s.s.s.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled task.\r\njava.lang.NullPointerException: null\r\n        at com.capitalone.dashboard.client.team.TeamDataClientSetupImpl.updateObjectInformation(TeamDataClientSetupImpl.java:85) ~[jira-feature-collector.jar!/:1.5.0-SNAPSHOT]\r\n        at com.capitalone.dashboard.client.team.TeamDataClientImpl.updateTeamInformation(TeamDataClientImpl.java:130) ~[jira-feature-collector.jar!/:1.5.0-SNAPSHOT]\r\n\r\nI’m trying to connect to JIRA from my  corporate secure connection and I have imported the certificate into the  jdk default truststore. It would be really helpful if any assistance is offered. Thanks.Also, I’m not sure about the values in the application.properties, it will be much appreciated if a working application.properties is shared\r\n\r\n**command used :**\r\n\r\njava -jar jira-feature-collector.jar --spring.config.name=jira --spring.config.location=C:\\user\\xxxxx\\\r\nHygieia\\jira-feature-collector\\application.properties\r\n\r\nApplication properties\r\n\r\n#PageSize\r\nfeature.pageSize=50\r\n\r\n# api.query.folder=${base.config.dir}/jiraapi-queries\r\nfeature.queryFolder=jiraapi-queries\r\n# Jira API Query file names (String template requires the files to have .st extension)\r\nfeature.storyQuery=story\r\nfeature.epicQuery=epic\r\nfeature.projectQuery=projectinfo\r\nfeature.memberQuery=memberinfo\r\nfeature.sprintQuery=sprintinfo\r\nfeature.teamQuery=teaminfo\r\nfeature.trendingQuery=trendinginfo\r\n\r\n#Scheduled Job prior minutes to recover data created during execution time\r\nfeature.scheduledPriorMin=2\r\n#Delta change date that modulates the collector item task (which should not see changes often)\r\nfeature.deltaCollectorItemStartDate=2016-01-01T00:00:00.000000\r\n\r\n######################\r\n#Spring Application Properties\r\nspring.data.mongodb.database=dashboard\r\nspring.data.mongodb.host=127.0.0.1\r\nspring.data.mongodb.port=27017\r\nspring.data.mongodb.username=testdb\r\nspring.data.mongodb.password=testdb\r\n\r\n#Jira Connection Details\r\n\r\nfeature.jiraBaseUrl=https://myorganization_jira.com/\r\n#feature.jiraCredentials=***********\r\nfeature.jiraCredentials=*********\r\nfeature.jiraOauthAuthtoken=oauth, not used\r\nfeature.jiraOauthRefreshtoken=oauth, not used\r\nfeature.jiraOauthRedirecturi=uri.this.is.test:uri\r\nfeature.jiraOauthExpiretime=234567890987\r\n\r\n# In Jira, general IssueType IDs are associated to various \"issue\"\r\n# attributes. However, there is one attribute which this collector's\r\n# queries rely on that change between different instantiations of Jira.\r\n# Please provide the name value reference to your instance's IssueType for\r\n# the lowest level of Issues (e.g., \"user story\") specific to your Jira\r\n# instance.  Note:  You can retrieve your instance's IssueType Name\r\n# listings via the following URI:\r\n# https://[your-jira-domain-name]/rest/api/2/issuetype/.  It is listed as\r\n# attribute \"name\" in the JSON response.\r\n\r\nfeature.jiraIssueTypeId=Story\r\n\r\n# In Jira, your instance will have its own custom field created for \"sprint\" or \"timebox\" details,\r\n# which includes a list of information.  This field allows you to specify that data field for your\r\n# instance of Jira. Note: You can retrieve your instance's sprint data field name\r\n# via the following URI, and look for a package name <em>com.atlassian.greenhopper.service.sprint.Sprint</em>;\r\n# your custom field name describes the values in this field:\r\n# https://[your-jira-domain-name]/rest/api/2/issue/[some-issue-name]\r\n\r\nfeature.jiraSprintDataFieldName=customfield_10003 \r\n\r\n# In Jira, your instance will have its own custom field created for \"super story\" or \"epic\" back-end ID,\r\n# which includes a list of information.  This field allows you to specify that data field for your instance\r\n# of Jira.  Note:  You can retrieve your instance's epic ID field name via the following URI where your\r\n# queried user story issue has a super issue (e.g., epic) tied to it; your custom field name describes the\r\n# epic value you expect to see, and is the only field that does this for a given issue:\r\n# https://[your-jira-domain-name]/rest/api/2/issue/[some-issue-name]\r\n\r\nfeature.jiraEpicIdFieldName=customfield_10003 \r\n\r\n######################\r\n#Chron schedule: S M D M Y [Day of the Week]\r\nfeature.cron=0 * * * * *\r\n\r\n#StartDate\r\nfeature.deltaStartDate=2015-12-01T00:00:00.000000\r\nfeature.masterStartDate=2015-01-01T00:00:00.000000\r\n\r\n#Core Artifacts\r\n# These arrays of status mappings must be completed in order for custom source system statuses to be providable by\r\n# Hygieia.  Currently, Hygieia only maps to the following 3 status mappings:  to do, doing, and done.  You can find\r\n# all available issue status mappings by going to your instance's version of the following API call:\r\n# http://fake.jira.com/rest/api/2/status/.  Your statuses are listed in the JSON response as \"name.\"\r\n\r\nfeature.todoStatuses[0]=\r\nfeature.doingStatuses[0]=\r\nfeature.doneStatuses[0]=\r\n\r\nError message : \r\n\r\n\r\n2016-02-16 12:06:54,435 INFO  c.c.dashboard.config.MongoConfig - Initializing Mongo Client server at: localhost:27017\r\n2016-02-16 12:06:54,440 INFO  org.mongodb.driver.cluster - Cluster created withsettings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, ser\r\nverSelectionTimeout='30000 ms', maxWaitQueueSize=500}2016-02-16 12:06:54,446 INFO  c.c.dashboard.config.MongoConfig - Connecting to M\r\nongo: Mongo{options=MongoClientOptions{description='null', readPreference=primary, writeConcern=WriteConcern{w=1, wtimeout=0, fsync=false, j=false, codecRegistr\r\ny=org.bson.codecs.configuration.ProvidersCodecRegistry@2510e76f, minConnectionsPerHost=0, maxConnectionsPerHost=100, threadsAllowedToBlockForConnectionMultiplie\r\nr=5, serverSelectionTimeout=30000, maxWaitTime=120000, maxConnectionIdleTime=0,maxConnectionLifeTime=0, connectTimeout=10000, socketTimeout=0, socketKeepAlive=\r\nfalse, sslEnabled=false, sslInvalidHostNamesAllowed=false, alwaysUseMBeans=false, heartbeatFrequency=10000, minHeartbeatFrequency=500, heartbeatConnectTimeout=2\r\n0000, heartbeatSocketTimeout=20000, localThreshold=15, requiredReplicaSetName='null', dbDecoderFactory=com.mongodb.DefaultDBDecoder$1@758a3c08, dbEncoderFactory\r\n=com.mongodb.DefaultDBEncoder$1@787d8895, socketFactory=javax.net.DefaultSocketFactory@4b215aa3, cursorFinalizerEnabled=true, connectionPoolSettings=ConnectionP\r\noolSettings{maxSize=100, minSize=0, maxWaitQueueSize=500, maxWaitTimeMS=120000,maxConnectionLifeTimeMS=0, maxConnectionIdleTimeMS=0, maintenanceInitialDelayMS=\r\n0, maintenanceFrequencyMS=60000}, socketSettings=SocketSettings{connectTimeoutMS=10000, readTimeoutMS=0, keepAlive=false, receiveBufferSize=0, sendBufferSize=0}\r\n, serverSettings=ServerSettings{heartbeatFrequencyMS=10000, minHeartbeatFrequencyMS=500}, heartbeatSocketSettings=SocketSettings{connectTimeoutMS=20000, readTim\r\neoutMS=20000, keepAlive=false, receiveBufferSize=0, sendBufferSize=0}}}2016-02-16 12:06:54,457 INFO  org.mongodb.driver.connection - Opened connection\r\n[connectionId{localValue:5, serverValue:521}] to localhost:270172016-02-16 12:06:54,488 INFO  org.mongodb.driver.cluster - Monitor thread succes\r\nsfully connected to server with description ServerDescription{address=localhost:27017, type=STANDALONE, state=CONNECTED, ok=true, version=ServerVersion{versionL\r\nist=[3, 2, 1]}, minWireVersion=0, maxWireVersion=4, electionId=null, maxDocumentSize=16777216, roundTripTimeNanos=2358906}\r\n\r\n2016-02-16 12:06:55,233 INFO  o.s.j.e.a.AnnotationMBeanExporter - Registering beans for JMX exposure on startup\r\n2016-02-16 12:06:55,249 INFO  com.capitalone.dashboard.Application - Started Application in 5.205 seconds (JVM running for 6.316)\r\n2016-02-16 12:07:00,031 INFO  c.c.d.collector.CollectorTask - Running Collector: Jira\r\n2016-02-16 12:07:00,039 INFO  c.c.d.collector.FeatureCollectorTask - Starting Feature collection...\r\n2016-02-16 12:07:00,090 INFO  c.c.d.c.team.TeamDataClientSetupImpl - Beginning collection of team data at Tue Feb 16 12:07:00 EST 2016\r\n2016-02-16 12:07:00,101 ERROR o.s.s.s.TaskUtils$LoggingErrorHandler - Unexpected error occurred in scheduled task.\r\njava.lang.NullPointerException: null\r\n        at com.capitalone.dashboard.client.team.TeamDataClientSetupImpl.updateObjectInformation(TeamDataClientSetupImpl.java:85) ~[jira-feature-collector.jar!/:\r\n1.5.0-SNAPSHOT]\r\n        at com.capitalone.dashboard.client.team.TeamDataClientImpl.updateTeamInformation(TeamDataClientImpl.java:130) ~[jira-feature-collector.jar!/:1.5.0-SNAPS\r\nHOT]\r\n        at com.capitalone.dashboard.collector.FeatureCollectorTask.collect(FeatureCollectorTask.java:99) ~[jira-feature-collector.jar!/:1.5.0-SNAPSHOT]\r\n        at com.capitalone.dashboard.collector.FeatureCollectorTask.collect(FeatureCollectorTask.java:26) ~[jira-feature-collector.jar!/:1.5.0-SNAPSHOT]\r\n        at com.capitalone.dashboard.collector.CollectorTask.run(CollectorTask.java:63) ~[core-1.5.0-SNAPSHOT.jar!/:1.5.0-SNAPSHOT]\r\n        at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) ~[spring-context-4.1.7.RELEASE.ja\r\nr!/:4.1.7.RELEASE]\r\n        at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81) [spring-context-4.1.7.RELEASE.jar!/:4.1.7.RELEASE]\r\n        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_71]\r\n        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_71]\r\n        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [na:1.8.0_71]\r\n        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [na:1.8.0_71]\r\n        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.\r\njava:1142) [na:1.8.0_71]\r\n        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_71]\r\n        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_71]\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/capitalone/Hygieia/issues/comments/215738861","html_url":"https://github.com/capitalone/Hygieia/issues/335#issuecomment-215738861","issue_url":"https://api.github.com/repos/capitalone/Hygieia/issues/335","id":215738861,"user":{"login":"amp5208","id":8902343,"avatar_url":"https://avatars.githubusercontent.com/u/8902343?v=3","gravatar_id":"","url":"https://api.github.com/users/amp5208","html_url":"https://github.com/amp5208","followers_url":"https://api.github.com/users/amp5208/followers","following_url":"https://api.github.com/users/amp5208/following{/other_user}","gists_url":"https://api.github.com/users/amp5208/gists{/gist_id}","starred_url":"https://api.github.com/users/amp5208/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/amp5208/subscriptions","organizations_url":"https://api.github.com/users/amp5208/orgs","repos_url":"https://api.github.com/users/amp5208/repos","events_url":"https://api.github.com/users/amp5208/events{/privacy}","received_events_url":"https://api.github.com/users/amp5208/received_events","type":"User","site_admin":false},"created_at":"2016-04-29T14:37:41Z","updated_at":"2016-04-29T14:37:41Z","body":"@aryasunny , Thank you for following-up.  The proxy configuration noted within this property file is not Jira specific necessarily; if you have a proxy, you must fill out the proxy configuration section of the properties (currently, the JiraFeatureCollector does not implement system environment configuration for proxy, i.e., HTTP_PROXY).\r\n\r\nRegarding your specific error, if you do not have an authentication proxy, your Jira property configuration for the proxy-specific settings should be the following (assuming a proxy IP):\r\n\r\n```properties\r\n# Jira Connection Details - Proxy is NOT just a 'Jira specific proxy' - this is your global enterprise proxy\r\nfeature.jiraProxyUrl=http://192.168.1.1\r\nfeature.jiraProxyPort=4000\r\n```\r\n\r\nPlease let me know if you have any additional questions."}}