Launching a program via JNLP produces security exception - javafx-2

If I read the JavaFX deployment guide correctly, I should be able to deploy an unsigned application so long as "the application requires [no] elevated privileges... ." I have reduced my application to the following bit of code:
package fxadhoc;
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.layout.Pane;
import javafx.stage.Stage;
public class FXAdHoc
extends Application
{
/**
* #param args the command line arguments
*/
public static void main(String[] args)
{
System.out.println( "launch" );
launch( args );
}
#Override
public void start(Stage stage) throws Exception
{
Pane root = new Pane();
root.getChildren().add( new Label( "Testing" ) );
Scene scene = new Scene( root );
stage.setScene( scene );
stage.show();
}
}
When I double-click the jar file (created by NetBeans) nothing happens. When I try to launch via the html or jnlp files (also created by NetBeans) I get a security exception:
Caused by: java.security.AccessControlException: access denied ("java.util.PropertyPermission" "javafx.debug" "read")
The full stack trace is provided below.
I am running Windows 7 with all the latest updates applied. I have downloaded the most recent version of NetBeans (7.1.1) which comes equipped with the latest version of JavaFX. I have downloaded the JavaFX samples, and they run fine. (In case you're curious, I tried self-signing the application and got the exception "ava.lang.RuntimeException: java.lang.UnsatisfiedLinkError: Can't load library: C:\Users\jack\Documents\NetBeansProjects\FXAdHoc\dist\bin\mat.dll"). I get the same exceptions when I build on Linux (again using NetBeans 7.1.1).
Can anyone tell me what I'm missing? Thanks...
The full stack trace for the exception:
java.lang.RuntimeException: Application launch error
at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:104)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.ExceptionInInitializerError
at com.sun.javafx.application.LauncherImpl.launchApplication1(LauncherImpl.java:140)
at com.sun.javafx.application.LauncherImpl.access$000(LauncherImpl.java:27)
at com.sun.javafx.application.LauncherImpl$1.run(LauncherImpl.java:97)
... 1 more
Caused by: java.security.AccessControlException: access denied ("java.util.PropertyPermission" "javafx.debug" "read")
at java.security.AccessControlContext.checkPermission(Unknown Source)
at java.security.AccessController.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPermission(Unknown Source)
at java.lang.SecurityManager.checkPropertyAccess(Unknown Source)
at java.lang.System.getProperty(Unknown Source)
at com.sun.javafx.runtime.SystemProperties.getProperty(SystemProperties.java:178)
at com.sun.javafx.runtime.SystemProperties$1.run(SystemProperties.java:67)
at java.security.AccessController.doPrivileged(Native Method)
at com.sun.javafx.runtime.SystemProperties.<clinit>(SystemProperties.java:62)
... 4 more

Apparently I had three different problems; please correct me if I get any of this wrong.
It should be possible to deploy an unsigned jar file, but you can't. I believe this is a known issue.
Downloading and installing the JavaFX runtime doesn't automatically make it available from the path. (I don't know why I can run the samples when I can't run my own code, but I'll have to figure that out.) Putting "...\JavaFX 2.o runtime\bin" in my path cured my "mat.dll not found" problem. Presumably getting the directory containing libmat.so into the path on my Linux system will cure the problem there, too.
As I tried different approaches to fixing the problem, I was also occasionally getting an "unsigned resource" exception, even when my jar file was signed. I believe this is a known Java issue going back to at least 1.4. The solution was to disable caching temporary files (Windows control panel/java/general/settings). Note that some remarks I read said that enabling caching is what fixes the problem.

Related

Unable to start guidewire CC server from tomcat

We have been trying to start the claimcenter server from tomcat. The server is getting started even though it throws exception with the message "ClaimCenter unable to start" in the logs. Please find the log details below.
gw.pl.exception.GWLifecycleException: An exception was thrown while starting a component. Setting runlevel to NODAEMONS
Caused by: gw.pl.exception.GWLifecycleException:Messaging plugin does not implement MessageTransport interface error
Possible causes -
The xyzMessageTransport class failed to instantiate due to invalid parameters.
A class which is not implementation of MessageTransport inteface configured under
MessageTransport plugin. check messaging-config.xml.
Also - specify plugin name or attach whole log if possible.

How can I add Marvin Framework to a dynamic web project running on tomcat?

Marvin Framework is running perfectly in my Java project in Eclipse. I have copied the whole marvin folder to the project root folder, following the readme file. All good.
Now, when setting up the same app as dynamic web project in Eclipse and try to run it on Eclipses tomcat 9, I get a HTTP Status 500 – Internal Server Error caused by java.lang.ClassNotFoundException (see 'ERROR 1'below).
It seems, in a dynamic web project the jars should be in WEB-INF/lib. When copying marvin_1.5.5.jar to WEB-INF/lib the class marvin.image.MarvinImage is found correctly (ERROR 1 disappears).
But unfortunately the Marvin image plugins are not found. I have tried to copy the whole marvin folder to WEB-INF/lib - did not work. I got another HTTP Status 500 – Internal Server Error with java.lang.NullPointerException (see 'ERROR 2' below).
I have tried to set the MarvinDefinitions.setImagePluginPath to myproject/WebContent/WEB-INF/lib/plugins/ - did not work. I got an error in the console: java.nio.file.NoSuchFileException: \myproject\WebContent\WEB-INF\lib\plugins\org.marvinproject.image.transform.scale.jar.
-> Does anyone know how to implement Marvin in a dynamic web project properly?
ERROR 1
HTTP Status 500 – Internal Server Error
Type Exception Report
Message Servlet execution threw an exception
Beschreibung The server encountered an unexpected condition that prevented it from fulfilling the request.
Exception
javax.servlet.ServletException: Servlet execution threw an exception
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
Root Cause
java.lang.NoClassDefFoundError: marvin/image/MarvinImage
controller.HomeController.doPost(HomeController.java:58)
javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
Root Cause
java.lang.ClassNotFoundException: marvin.image.MarvinImage
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1365)
org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1188)
controller.HomeController.doPost(HomeController.java:58)
javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
ERROR 2
HTTP Status 500 – Internal Server Error
Type Exception Report
Beschreibung The server encountered an unexpected condition that prevented it from fulfilling the request.
Exception
java.lang.NullPointerException
marvin.util.MarvinJarLoader.getClass(MarvinJarLoader.java:69)
marvin.util.MarvinJarLoader.getObject(MarvinJarLoader.java:51)
marvin.util.MarvinPluginLoader.loadPlugin(MarvinPluginLoader.java:55)
marvin.util.MarvinPluginLoader.loadImagePlugin(MarvinPluginLoader.java:37)
marvin.MarvinPluginCollection.checkAndLoadImagePlugin(MarvinPluginCollection.java:1225)
marvin.MarvinPluginCollection.scale(MarvinPluginCollection.java:956)
marvin.MarvinPluginCollection.scale(MarvinPluginCollection.java:973)
controller.HomeController.doPost(HomeController.java:60)
javax.servlet.http.HttpServlet.service(HttpServlet.java:652)
javax.servlet.http.HttpServlet.service(HttpServlet.java:733)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
The problem with the way the Marvin zip distribution works is that it loads the JAR files at runtime as files. So you'll have to find out where the plugins were deployed. Retrieving a reference to the ServletContext and setting:
MarvinDefinitions.setImagePluginPath(servletContext.getRealPath("/WEB-INF/lib/plugins"));
might work if the WAR archive was unpacked to a directory (as Eclipse does). But it won't work in every situation.
A better solution is to download the Marvin jars (MarvinFramework and MarvinPlugins) from Maven and put them into your WEB-INF/lib folder (or add them as dependencies of the project if you are using Maven). In this distribution all the plugins will be already loaded and available through the static methods in the marvinplugins.MarvinPluginCollection class.

Deltaspike service layer catching PersistenceException unexpected behavior

I have a java ee 8 web app using deltaspike using core, data and jsf modules.
I also added cdi bean (RegisterService using #trasactional) which calls a UserRepository
public void createNewUser(User newUser){
try{
userRepository.save(newUser)
}catch(PersistenceException ex){
throw new RegisterException("Error", ex); //it never falls at this point
}
}
When service layer calls repository I’m catching a PersistenceException and rethrowing a service layer exception but the repository never throws PersistenceException even if the primary ID is duplicated (I just can see the stacktrace in console output), of course I’m running into a contraint exception to try to execute the expected flow
I’m using a deltaspike exception handler but I have not added a #handler for PersistenceException
Does somebody knows what could be happening here?
this is a reproducible example: https://github.com/gdiazs/javaee8-fullstack
Since there is no tables in DB it will throw an PersitenceException.
I ran this example in 2 laptops.
Mine: OSx 10.14.6
JDK: Open JDK Zulu 1.8
eclipse and also maven terminal execution
Work: OSx 10.14.6 (it works as I expect good here)
JDK: Oracle 1.8
Intellij and also maven terminal execution
So now I`m really confused, no idea why is working just in one.

hybris Cache is not alive error

I am using hybris version 5.5.1, I have done modulegen and done all the configuration in localextention.xml, now when I started the hybris server (. ./hybrisserver.sh) and getting the below error.
ERROR [localhost-startStop-1] [DeploymentMigrationUtil] Error while migrating deployments of extension core
java.lang.IllegalStateException: The queryCacheRegion Cache is not alive (STATUS_SHUTDOWN)
at net.sf.ehcache.Cache$CacheStatus.checkAlive(Cache.java:4075)
at net.sf.ehcache.Cache.checkStatus(Cache.java:2766)
Have a look at the snippet below, this is taken from the stacktrace that you shared.
**Caused by: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [my.bookstore.cockpits.setup.CockpitSystemSetup] for bean with name 'yAcceleratorCockpitsSystemSetup' defined in org.springframework.integration.security.config.SecurityIntegrationConfigurationInitializer#4091564b; nested exception is java.lang.ClassNotFoundException: my.bookstore.cockpits.setup.CockpitSystemSetup**
at org.springframework.integration.security.config.SecurityIntegrationConfigurationInitializer.initialize(SecurityIntegrationConfigurationInitializer.java:63)
at org.springframework.integration.config.IntegrationConfigurationBeanFactoryPostProcessor.postProcessBeanFactory(IntegrationConfigurationBeanFactoryPostProcessor.java:48)
... 29 more
Caused by: java.lang.ClassNotFoundException: my.bookstore.cockpits.setup.CockpitSystemSetup
Now, please check for this bean initialization in your spring context, due to java.lang.ClassNotFoundException: my.bookstore.cockpits.setup.CockpitSystemSetup
Look for the bean initialization where the bean injection of this class is declared, and make sure that the qualified name of the class is correct.
Let me know if the issue still persists.

Unable to install GitHub for Windows

I'm trying to install github for windows when I received this error:
Application cannot be started. Contact the application vendor.
The error log produced this:
PLATFORM VERSION INFO
Windows : 6.2.9200.0 (Win32NT)
Common Language Runtime : 4.0.30319.34014
System.Deployment.dll : 4.0.30319.33440 built by: FX45W81RTMREL
clr.dll : 4.0.30319.34014 built by: FX45W81RTMGDR
dfdll.dll : 4.0.30319.33440 built by: FX45W81RTMREL
dfshim.dll : 6.3.9600.16384 (winblue_rtm.130821-1623)
SOURCES
Deployment url : http://github-windows.s3.amazonaws.com/GitHub.application
ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of http://github-windows.s3.amazonaws.com/GitHub.application resulted in exception. Following failure messages were detected:
+ The referenced assembly is not installed on your system. (Exception from HRESULT: 0x800736B3)
COMPONENT STORE TRANSACTION FAILURE SUMMARY
No transaction error was detected.
WARNINGS
There were no warnings during this operation.
OPERATION PROGRESS STATUS
* [8/22/2014 12:51:27 AM] : Activation of http://github-windows.s3.amazonaws.com/GitHub.application has started.
ERROR DETAILS
Following errors were detected during this operation.
* [8/22/2014 12:51:28 AM] System.Runtime.InteropServices.COMException
- The referenced assembly is not installed on your system. (Exception from HRESULT: 0x800736B3)
- Source: System.Deployment
- Stack trace:
at System.Deployment.Internal.Isolation.IStore.GetAssemblyInformation(UInt32 Flags, IDefinitionIdentity DefinitionIdentity, Guid& riid)
at System.Deployment.Application.ComponentStore.GetSubscriptionStateInternal(DefinitionIdentity subId)
at System.Deployment.Application.SubscriptionStore.GetSubscriptionStateInternal(SubscriptionState subState)
at System.Deployment.Application.SubscriptionState.Validate()
at System.Deployment.Application.SubscriptionStore.CheckAndReferenceApplication(SubscriptionState subState, DefinitionAppId appId, Int64 transactionId)
at System.Deployment.Application.DownloadManager.DownloadDeploymentManifestDirectBypass(SubscriptionStore subStore, Uri& sourceUri, TempFile& tempFile, SubscriptionState& subState, IDownloadNotification notification, DownloadOptions options, ServerInformation& serverInformation)
at System.Deployment.Application.DownloadManager.DownloadDeploymentManifestBypass(SubscriptionStore subStore, Uri& sourceUri, TempFile& tempFile, SubscriptionState& subState, IDownloadNotification notification, DownloadOptions options)
at System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(Uri activationUri, Boolean isShortcut, String textualSubId, String deploymentProviderUrlFromExtension, BrowserSettings browserSettings, String& errorPageUrl)
at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state)
COMPONENT STORE TRANSACTION DETAILS
No transaction information is available.
According to https://status.github.com/messages , there are no issues currently with the servers.
I am on a personal computer so there shouldn't be any issues with the connection. I tried downloading the application directly from http://github-windows.s3.amazonaws.com/GitHub.application , but the result was the same.
I am running Windows 8.1 Pro x64.
Edit 1: Currently I'm working around being unable to install GitHub for Windows by first installing it on another system, then taking the newly installed files from %appdata%\Local\Apps\2.0, and moving them to the system that is having trouble installing. (The full directory is %appdata%\Local\Apps\2.0\EWG9HYRR.BKG\2XKOJCRD.XRD\gith..tion_317444273a93ac29_0002.0002_f44dcb2e9d4cde94).
One of the major caveats of this workaround is that on the problem system, GitHub for Windows will report "This isn't a networked deployed app." and therefor not automatically update.
After contacting support, they emailed me and helped me work through the problem preventing GitHub for windows from installing.
This is a problem with the ClickOnce Application Cache.
Before proceeding make sure that you have connectivity.
Sometimes Firewall may be blocking this *.application
So turn off you firewall for private and public profile and then retry.
If the issue persists, you can use the process specified below.
Hold down the Windows key and type R.
Type in rundll32 %SystemRoot%\system32\dfshim.dll CleanOnlineAppCache in the run dialog and hit Enter.
Then try installing the application.
If that doesn't work, there's a more manual approach to ensuring the cache is cleared - you can delete the ClickOnce Application folder directly. On Windows Vista or higher, this will be the %LocalAppData%\Apps\2.0 directory. Simply delete the %LocalAppData%\Apps\2.0 directory and restart github for windows.
If nothing seems to happen after running the installer, you may need to restart Windows, or explorer.exe (if using the .msi installer, the app may be in: %LocalAppData%\GitHubDesktop)
I had this issue as well installing github on Windows 8 x64, I tried all suggestions above related to removing the 2.0 directory but with no luck. Later I found a blog saying that one guy solved this issue by downloading the installer using Internet Explorer (weird right?) Surprisingly for me, it worked! Hre is the link https://github-windows.s3.amazonaws.com/GitHub.application So I recommend you to do the same, at least IE is worth for something :)
Best
For Windows 8.1 64-Bit,
Go to file Explorer (Shortcut: windows key + E).
Paste this " %LocalAppData%\Apps" (without inverted commas) in you file explorer panel (which displays your current location in file explorer.
Press Enter key.
Delete the folder named 2.0 .
In my case, this worked without a glitch. I Hope this helps you
It worked fine for me. Really deleting the directory worked fine.
If you have problems locating the directory copy directly %LocalAppData%\Apps\2.0 on the explorer window. Delete every folder you find there and it will work.
Great response as it was really annoying for me.
I had this issue today on Windows 10 so the issue is still there. The solution provided by #JoeC above solved my issue. The error I received was:
PLATFORM VERSION INFO
Windows : 10.0.10586.0 (Win32NT)
Common Language Runtime : 4.0.30319.42000
System.Deployment.dll : 4.6.1038.0 built by: NETFXREL2
clr.dll : 4.6.1063.1 built by: NETFXREL3STAGE
dfdll.dll : 4.6.1038.0 built by: NETFXREL2
dfshim.dll : 10.0.10586.0 (th2_release.151029-1700)
SOURCES
Deployment url : http://github-windows.s3.amazonaws.com/GitHub.application
ERROR SUMMARY
Below is a summary of the errors, details of these errors are listed later in the log.
* Activation of http://github-windows.s3.amazonaws.com/GitHub.application resulted in exception. Following failure messages were detected:
+ The referenced assembly is not installed on your system. (Exception from HRESULT: 0x800736B3)
COMPONENT STORE TRANSACTION FAILURE SUMMARY
No transaction error was detected.
WARNINGS
There were no warnings during this operation.
OPERATION PROGRESS STATUS
* [2016-02-01 06:29:55] : Activation of http://github-windows.s3.amazonaws.com/GitHub.application has started.
ERROR DETAILS
Following errors were detected during this operation.
* [2016-02-01 06:29:56] System.Runtime.InteropServices.COMException
- The referenced assembly is not installed on your system. (Exception from HRESULT: 0x800736B3)
- Source: System.Deployment
- Stack trace:
at System.Deployment.Internal.Isolation.IStore.GetAssemblyInformation(UInt32 Flags, IDefinitionIdentity DefinitionIdentity, Guid& riid)
at System.Deployment.Internal.Isolation.Store.GetAssemblyManifest(UInt32 Flags, IDefinitionIdentity DefinitionIdentity)
at System.Deployment.Application.ComponentStore.GetAssemblyManifest(DefinitionIdentity asmId)
at System.Deployment.Application.ComponentStore.GetSubscriptionStateInternal(DefinitionIdentity subId)
at System.Deployment.Application.SubscriptionStore.GetSubscriptionStateInternal(SubscriptionState subState)
at System.Deployment.Application.SubscriptionStore.CheckAndReferenceApplication(SubscriptionState subState, DefinitionAppId appId, Int64 transactionId)
at System.Deployment.Application.DownloadManager.DownloadDeploymentManifestDirectBypass(SubscriptionStore subStore, Uri& sourceUri, TempFile& tempFile, SubscriptionState& subState, IDownloadNotification notification, DownloadOptions options, ServerInformation& serverInformation)
at System.Deployment.Application.DownloadManager.DownloadDeploymentManifestBypass(SubscriptionStore subStore, Uri& sourceUri, TempFile& tempFile, SubscriptionState& subState, IDownloadNotification notification, DownloadOptions options)
at System.Deployment.Application.ApplicationActivator.PerformDeploymentActivation(Uri activationUri, Boolean isShortcut, String textualSubId, String deploymentProviderUrlFromExtension, BrowserSettings browserSettings, String& errorPageUrl)
at System.Deployment.Application.ApplicationActivator.ActivateDeploymentWorker(Object state)
COMPONENT STORE TRANSACTION DETAILS
No transaction information is available.
I see answers here and understand that i did dumb thing.
I just made small script that copied all tmp files during installation.
Made small Windows copygithub.cmd file:
:loop
xcopy C:\Users\Stall\AppData\Local\Temp\Deployment C:\github /y /h /i /s
goto loop
Its just a copy in a loop. Start it before install github. And close after you receive an error.
Once it get a fail, all files are erased. So i didn't want to miss any file. This copy is in infinity loop. So you should stop it after you got error.
It does not solve issue, but i received working github.
That's what i wanted.
The problem we had was that a third-party security application that controlled our corporate firewall on each device was blocking ClickOnce from accessing dfshim.dll over WiFi, so one potential solution for us was to have our inspectors start the .NET application while connected via ethernet and then after the app was booted up they could go out and perform their inspections.

Resources