1:33, EEST
April 12, 2018
While setting the creating certificate for application identity, am getting a null pointer excception.
final ApplicationIdentity identity = ApplicationIdentity.loadOrCreateCertificate(
applicationDescription,
“Some organization”, /* Organization Name */
“opcua”, /* Private Key Password, optional */
new File(certStore.getBaseDir(), “private”), /* Key File Path */
null, /* CA certificate & private key, optional */
null, /* Key Sizes for instance certificates to create, optional */
true); /* Enable renewing the certificate */
I get the following exception.
java.lang.NullPointerException
at com.prosysopc.ua.ApplicationIdentity.a(SourceFile:686)
at com.prosysopc.ua.ApplicationIdentity.loadOrCreateCertificate(SourceFile:356)
at com.prosysopc.ua.ApplicationIdentity.loadOrCreateCertificate(SourceFile:318)
at com.iot.nms.deviceprotocols.opcua.OpcUaClient.initApplicationIdentity(OpcUaClient.java:121)
at com.iot.nms.deviceprotocols.opcua.OpcUaClient.initialize(OpcUaClient.java:92)
at com.iot.nms.deviceprotocols.opcua.OpcUaClientTest.getOpcUaClient(OpcUaClientTest.java:51)
at com.iot.nms.deviceprotocols.opcua.OpcUaClientTest.readValuesTest(OpcUaClientTest.java:65)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
at org.testng.internal.MethodInvocationHelper$1.runTestMethod(MethodInvocationHelper.java:182)
at org.springframework.test.context.testng.AbstractTestNGSpringContextTests.run(AbstractTestNGSpringContextTests.java:175)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.testng.internal.MethodInvocationHelper.invokeHookable(MethodInvocationHelper.java:194)
at org.testng.internal.Invoker.invokeMethod(Invoker.java:707)
at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:901)
at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1231)
at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
at org.testng.TestRunner.privateRun(TestRunner.java:767)
at org.testng.TestRunner.run(TestRunner.java:617)
at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:329)
at org.testng.SuiteRunner.privateRun(SuiteRunner.java:291)
at org.testng.SuiteRunner.run(SuiteRunner.java:240)
at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:86)
at org.testng.TestNG.runSuitesSequentially(TestNG.java:1198)
at org.testng.TestNG.runSuitesLocally(TestNG.java:1123)
at org.testng.TestNG.run(TestNG.java:1031)
at org.apache.maven.surefire.testng.TestNGExecutor.run(TestNGExecutor.java:132)
at org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.executeSingleClass(TestNGDirectoryTestSuite.java:112)
at org.apache.maven.surefire.testng.TestNGDirectoryTestSuite.execute(TestNGDirectoryTestSuite.java:99)
at org.apache.maven.surefire.testng.TestNGProvider.invoke(TestNGProvider.java:147)
at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:290)
at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:242)
at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:121)
12:24, EEST
April 17, 2013
Thank you for the good error report. The problem is that the Application Name field inside the Application Description is null.
You can look at the SampleConsoleClient example, where the Application Name is set like this:
appDescription.setApplicationName(new LocalizedText(APP_NAME + “@localhost”));
The error message is not clear meaning that you indeed have no way of figuring this out from the error message itself. In principle, the SDK could make a null check and report this in a more informative way. However, the Application Name is kind of a basic thing that all OPC UA applications should have. Anyway, I marked this now into our issue tracker and we’ll consider improving this in a future release.
Let us know if there’s further questions about this issue or if you have some questions about what the Application Name means.
Most Users Ever Online: 1919
Currently Online:
13 Guest(s)
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Heikki Tahvanainen: 402
hbrackel: 144
rocket science: 88
pramanj: 86
Francesco Zambon: 83
Ibrahim: 78
Sabari: 62
kapsl: 57
gjevremovic: 49
Xavier: 43
Member Stats:
Guest Posters: 0
Members: 737
Moderators: 7
Admins: 1
Forum Stats:
Groups: 3
Forums: 15
Topics: 1524
Posts: 6450
Newest Members:
fannielima, kristiewinkle8, rust, christamcdowall, redaahern07571, nigelbdhmp, travistimmons, AnnelCib, dalenegettinger, howardkennerleyModerators: Jouni Aro: 1026, Pyry: 1, Petri: 0, Bjarne Boström: 1026, Jimmy Ni: 26, Matti Siponen: 346, Lusetti: 0
Administrators: admin: 1