Apple has, however, apparently already moved quickly to address the issue, disabling the Java 7 plug-in on Macs where it is already installed. Apple has achieved this by updating its "Xprotect.plist" blacklist to require a minimum of an as-yet unreleased 1.7.0_10-b19 version of Java 7.
There is no word yet on when an updated version of Java addressing the issue will be made available by Oracle.
Still blocked.
Is Opera (or Lightning) a browser that does not respect Apple XProtect?
I have no other browsers installed and wouldn't like to install more.
Many thanks!!
This MacRumors article is potentially misleading. A truer title might have been:
Apple protects Mac users of Safari by blocking Java 7 Update 10 (1.7.0_10-b18)
Browsers such as OmniWeb and Safari respect Apple's blockage.
Browsers such as Firefox do not respect the blockage.
Screenshots the eighth demonstrates that whilst users of Safari are protected, users of Firefox may remain at risk with the Java 7 Update 10 that is blocked by Apple.
The ninth shot draws attention to the relevant security option in the Java Control Panel for Java 7.
Apple's distribution of Java 6 Update 37 appears to be not blocked by XProtect shot twenty.
The update to the original article is misleading:
That's wrong - not all those versions are affected. Currently neither Apple's distribution of Java 6 Update 37, nor Oracle's distribution of Java 6 Update 37, is listed under CVE-2013-0422.
Google Chrome, Java and XProtect
Chromium issue 169649: Google Chrome for Mac does not work with Apple XProtect
Chrome for Mac is 32-bit. Java 7 runs only on 64-bit browsers.
If you have no immediate requirement to run a Java applet within Safari
Please await an update from Oracle.
If you do have an immediate requirement
You can either:
- reuse Java 6 Update 37; or
- use something greater than Java 7 update 10.
Java for OS X 2012-006: How to re-enable the Apple-provided Java SE 6 applet plug-in and Web Start functionality
Proceed with caution:
- be aware of Oracle's February 2013 end of life policy for Java SE 6.
Internet plug-in for Java 7 Update 12 (early access, developer preview release)
You may cautiously use the Internet plug-in that is with the pre-release JDK.
Java Platform, Standard Edition 7 Update 12 Developer Preview Releases Java.net
Aim for the JDK, not the JRE. At the time of writing the download for OS X is:
- jdk-7u12-ea-bin-b08-macosx-x86_64-03_jan_2013.dmg
Notes
At Oracle's Verify Java Version page, the result may be:
at this time, ignore those words from Oracle. The developer preview releases of Java should be not recommended in that way.
Proceed with caution:
- a vulnerability that is within Java 7 Update 10 may be also within a developer preview release
- pay regular visits to Java Downloads for All Operating Systems to discover what's truly recommended by Oracle.
Further reading
In Ask Different:
This MacRumors article is potentially misleading.
As a middleware and server platform Java is great. But when it comes to front end, it sucks like a tornado. Their widgets and the slow response times are horrible. Java was trying to be a "all in one" solution but it never got accepted.
I know the Mars rover interface is Java. But NASA engineers could have chosen the easy way out, you know run it on Linux and throw Java on top of it. Easy out of the box solution. I believe Android is based on such a platform, but I am not sure. No wonder it's so glitchy and jerky.
There are well written Java UI applications that show what is possible if developers know what they are doing. Java can be good on the desktop it just seldom is because of poorly written applications.
Java is the worst platform to try make GUIs on. Swing is sent from hell to make a programmer's life miserable. Even good programmers will struggle to make good UIs in Swing, I would rather code in C++/QT and deal with platform issues than to deal with Swing.
As I said if you know what your doing with it, it is possible to produce a decent UI with Java. I'm not saying its easy but it is possible to do. Coding in C++/QT for multiple platforms is also a bag of hurt, compiling for multiple targets and coding platform differences so there is no 'easy' way to go with this.
At least on C++ it's not actually that hard if you're willing to put a little effort into some abstraction code. Very few classes actually care what platform they're on so if you properly encapsulate your code it doesn't turn out to be much of an issue. QT also does a pretty good effort in mimicking the native platform too.
I don't think you've actually ever coded anything cross-platform to understand how difficult it really is.
The hard part is not just splitting the code between the business logic and the code - this should be done irregardless - the hard part is the way all the GUI elements are handled in different operating systems. Windows, buttons, sliders, menus, etc. take different inputs, send different events, are different sizes, between all OSes.
Specifying a size of 100x100 for a window, for example, will create a 100x100 window in OS X, but a 106x120 window in Windows 7 (Windows 7 adds room for the outside borders and title bar). And the inside of the window, the viewport, the part you can actually draw in, is 100x100 in Windows 7, but more like 96x92 in OS X. Scroll bars? OS X hides them, and you can draw beneath them, Windows 7, you can't draw beneath them. Some coordinate systems have (0,0) in the upper left, some have it in the lower left. And so on, and so on. You have to become an expert in both OSes.
If your V and C is seperate from your M in MVC, none of those affect you. You just have to write 3 seperate GUIs that receive input and provide output, and a small View Controller that talks to your model controller. The model controller and the actual model can be reused on any platform.
Sounds like you've never actually wrote portable code and are trying to make up excuses for it.
I have Java unchecked in Safari but I have installed Java with Android SDK (version 1.6.0_37) so...is my Mac in danger?
Please help!
I don't think you've actually ever coded anything cross-platform to understand how difficult it really is.
The hard part is not just splitting the code between the business logic and the code - this should be done irregardless - the hard part is the way all the GUI elements are handled in different operating systems. Windows, buttons, sliders, menus, etc. take different inputs, send different events, are different sizes, between all OSes.
You have to become an expert in both OSes.
That part is what makes Java so ideal for developers. I don't want to learn all the APIs to create GUIs in Unix , Microsoft and Apple. Just learn one API, and my code works in all those operating Systems. Sun/Oracle has spent years fine tuning this, so I don't have to code for lots of different systems.
Thanks, I can sleep calm now. Just when I finish Android project I will uninstall this piece of *+%@
I would hope if I programmer I was hiring actually knew about the platform I hired him to work for. If they don't they learn.
~ Sun Jan 20 03:52:58>/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java -version
java version "1.7.0_11"
Java(TM) SE Runtime Environment (build 1.7.0_11-b21)
Java HotSpot(TM) 64-Bit Server VM (build 23.6-b04, mixed mode)