Future of Swing and other GUI technologies

Does anyone have any opinion of what the future of Swing is going to look like?
My opinion is that Swing (like Java) seriously kicks butt. Right now there are very few Swing applications around that I can gather. But as computer chips are doubling in speed about every two years I don't think anything can stop Java Swing from dominating in 5 to 10 years time.
Swing de-geekafies the software developement process. Its not about programming anymore, it's about OO Design.
PS - does anyone else use the most awesome Java IDE in existence? ie. IntelliJ IDEA?

I've been using Swing/JFC since it's early inceptions in 1997. Heck, I recall that we were initially on the 0.4 release and the pace at which the folks in the Swing team were churning out new 0.x versions was quite phenomenal.
That said, it has evolved into a great class library with plenty of functionality - way beyond what most people require.
As for dominance - who knows, but I'm sure it will be extremely popular at least for the next few years, perhaps longer.
My $0.02 worth.
cheers,
Greg
P.S: Yes, I'm using Intelli/J Idea and I think it's a fantastic IDE. Much, much better than anything I've used in the past (which includes JBuilder, J++, etc). :-)

Similar Messages

  • I´m from Brazil and I would like to know if I can use the Labview and other National technologies to create a building/home automation (energy, water, lightning,...)? Which would be a ideal project? Which equipments should I use?

    I would like to know all about National technology regarding building/home automation?

    I could help you better if you had an idea of the equipment you will be controlling or reading to/from. Are you planning to totally customize a system or are you looking to use instruments/controllers already available for Home Automation? Im not sure I understand what you really need. Here's an Idea. Computer is the controller of the system.
    System consist of Light Control Only (to keep it simple). Program written in LabVIEW. Here you can create schedules to turn lights on/off/dim. Then LV could communicate, (for example using X10 or other protocol), commands to the device actually controlling the lights. Lighting device could be controlled using some sort of communications like, X10, Serial, IR, RF, Ethernet, etc... So this system can turn lights
    on/off/dim% either at the click of a button on your screen or a timer. Adding any other system in the house will more than likely require a different communication protocol and complicates things even further. You could much of this with regular automation hardware from NI but this requires integrating different components like relays, dimmers, etc.. Much more work and more expensive, (I would think), than buying a device made specifically for the system.
    I hope this helps.

  • Centering Applications, spawning windows and other GUI stuff

    Hi, possibly a silly question, but leave me alone I'm new :o)
    How do I get my application to center on the screen ? At the moment it opens upin the top left hand corner of the screen.
    Also whilst I'm on the topic my app with goes from screen to screen, that is when you click a button it makes turns that window "off" and opens the new destination window with setVisible(true/false), however when ever I move to the new window it always opens in the default location, is there a way in whivh the opened window appears in the location of the old one, for example, invoke the app, move the window around the screen, clikc a refresh button which will close and then re-open the same window and for the new scren to be in the new location, at the moment it will re-open in the top left hand corner of the screen as per usual

    Hi,
    You could just create a class that does it for you. See the code below for an example class that centers itself on any screen.
    import java.awt.*;
    import java.awt.event.*;
    import javax.swing.*;
    public class MyFrame extends JFrame
      public MyFrame()
        this( null );
      public MyFrame( String title )
        super( title );
      public void setVisible( boolean flag )
        if( flag )
          // Show should center on screen
          this.show();
        else
          // Hide should just call parent to perform function.
          super.setVisible( flag );
      public void show()
        //  Center this window to the main window.
        Dimension screenDim = Toolkit.getDefaultToolkit().getScreenSize();
        Dimension thisDim = this.getSize();
        Point thisLoc = new Point();
        thisLoc.x = (screenDim.width / 2) - (thisDim.width / 2);
        thisLoc.y = (screenDim.height / 2) - (thisDim.height / 2);
        this.setLocation( thisLoc );
        //  Display window now.
        super.show();
    }Enjoy,
    Manfred.

  • Mavericks Mail; difference in delete folder and trash folder?  I don't know which folder to use clearing out old messages, spam, junk and other detrious I might want to recover in the future and which folder for highly sensitive or personal  informa

    I don't know which folder to use clearing out old messages, spam, junk and other detrious I might want to recover in the future and which folder for highly sensitive or personal  in formation I want to keep confidential.

    More to my question regarding standard Mail folders, how do Trash and Delete differ in function?

  • Pros and Cons of using REST over JMS (and other technologies)

    Hey all,
    I am working on a project where we were using JMS initially to send messages between servers. Our front end servers have a RESTful API and use JEE6, with EJB 3.1 entity beans connected to a mysql database and so forth. The back end servers are more like "agents" so to speak.. we send some work for them to do, they do it. They are deployed in GlassFish 3.1 as well, but initially I was using JMS to listen to messages. I learned that JMS onMessage() is not threaded, so in order to facilitate handling of potentially hundreds of messages at once, I had to implement my own threading framework. Basically I used the Executor class. I could have used MDBs, but they are a lot more heavyweight than I needed, as the code within the onMessage was not using any of the container services.
    We ran into other issues, such as deploying our app in a distributed architecture in the cloud like EC2 was painful at best. Currently the cloud services we found don't support multi-cast so the nice "discover" feature for clustering JMS and other applications wasn't going to work. For some odd reason there seems to be little info on building out a scalable JEE application in the cloud. Even the EC2 techs, and RackSpace and two others had nobody that understood how to do it.
    So in light of this, plus the data we were sending via JMS was a number of different types that had to all be together in a group to be processed.. I started looking at using REST. Java/Jersey (JAX-RS) is so easy to implement and has thus far had wide industry adoption. The fact that our API is already using it on the front end meant I could re-use some of the representations on the back end servers, while a few had to be modified as our public API was not quite needed in full on the back end. Replacing JMS took about a day or so to put the "onmessage" handler into a REST form on the back end servers. Being able to submit an object (via JAXB) from the front servers to the back servers was much nicer to work with than building up a MapMessage object full of Map objects to contain the variety of data elements we needed to send as a group to our back end servers. Since it goes as XML, I am looking at using gzip as well, which should compress it by about 90% or so, making it use much less bandwidth and thus be faster. I don't know how JMS handles large messages. We were using HornetQ server and client.
    So I am curious what anyone thinks.. especially anyone that is knowledgeable with JMS and may understand REST as well. What benefits do we lose out on via JMS. Mind you, we were using a single queue and not broadcasting messages.. we wanted to make sure that one and only one end server got the message and handled it.
    Thanks..look forward to anyone's thoughts on this.

    851827 wrote:
    Thank you for the reply. One of the main reasons to switch to REST was JMS is strongly tied to Java. While I believe it can work with other message brokers that other platforms/languages can also use, we didn't want to spend more time researching all those paths. REST is very simple, works very well and is easy to implement in almost any language and platform. Our architecture is basically a front end rest API consumed by clients, and the back end servers are more like worker threads. We apply a set of rules, validations, and such on the front end, then send the work to be done to the back end. We could do it all in one server tier, but we also want to allow other 3rd parties to implement the "worker" server pieces in their own domains with their own language/platform of choice. Now, with this model, they simply provide a URL to send some REST calls to, and send some REST calls back to our servers.well, this sounds like this would be one of those requirements which might make jms not a good fit. as ejp mentioned, message brokers usually have bindings in multiple languages, so jms does not necessarily restrict you from using other languages/platforms as the worker nodes. using a REST based api certainly makes that more simple, though.
    As for load balancing, I am not entirely sure how glassfish or JBoss does it. Last time I did anything with scaling, it involved load balancers in front of servers that were session/cookie aware for stateful needs, and could round robin or based on some load factor on each server send requests to appropriate servers in a cluster. If you're saying that JBoss and/or GlassFish no longer need that.. then how is it done? I read up on HornetQ where a request sent to one ip/hornetq server could "discover" other servers in a cluster and balance the load by sending requests to other hornetq servers. I assume this is how the JEE containers are now doing it? The problem with that to me is.. you have one server that is loaded with all incoming traffic and then has to resend it on to other servers in the cluster. With enough load, it seems that the glassfish or jboss server become a load balancer and not doing what they were designed to do.. be a JEE container. I don't recall now if load balancing is in the spec or not..I would think it would not be required to be part of a container though, including session replication and such? Is that part of the spec now?you are confusing many different types of scaling. different layers of the jee stack scale in different ways. you usually scale/load balance at the web layer by putting a load balancer in front of your servers. at the ejb layer, however, you don't necessarily need that. in jboss, the client-side stub for invoking remote ejbs in a cluster will actually include the addresses for all the boxes and do some sort of work distribution itself. so, no given ejb server would be receiving all the incoming load. for jms, again, there are various points of work to consider. you have the message broker itself which is scaled/load balanced in whatever fashion it supports (don't know many details on actual message broker impls). but, for the mdbs themselves, each jee server is pretty independent. each jee server in the cluster will start a pool of mdbs and setup a connection to the relevant queue. then, the incoming messages will be distributed to the various servers and mdbs accordingly. again, no single box will be more loaded than any other.
    load balancing/clustering is not part of the jee "spec", but it is one of the many features that a decent jee server will handle for you. the point of jee was to specify patterns for doing work which, if followed, allow the app server to do all the "hard" parts. some of those features are required (transactions, authentication, etc), and some of those features are not (clustering, load-balancing, other robustness features).
    I still would think dedicated load balancers, whether physical hardware or virtual software running in a cloud/VM setup would be a better solution for handling load to different tiers?like i said, that depends on the tier. makes sense in some situations, not others. (for one thing, load-balancers tend to be http based, so they don't work so well for non-http protocols.)

  • Adobe Air and Flash Future on Desktop and Mobile Devices

    Hello,
    iam interested to develop for mobil and desktop devices with AS3 and Flash Professional and i have any question.
    I see also many benefits to develop in flash as in java because javas gui development is based on swing a old java graphics engine.
    Next reason is the plattform like Linux,Windows,IOS.,the Game Development and other stuff.
    With Flash i can create nextgen interactive stunning cool gui interfaces for apps.
    I dont know why flash sucks for the market and devices.
    My question: is as3 and flash save for the future ?
    Make it really sense to learn as3 and Flash ?
    I have read many blogs,threads on adobe and other forums year 2012 Adobe stop flash development,
    and now 2013 google androids kitkat now have removed api features that kills complete flash !!!
    Other comments says Flash is dead for the market!? Many frustradet flash developers he work 10 years and more with flash are crying.
    So what is really the Future for the A3 and Flash Development ?
    Thanks and greetings

    Hi mc_gfx,
    > You think i can get started with flash and air development without worries?
    Software development always involves risk, so you can't really do much without worries.       AIR in particular is a cutting (bleading?) edge technology. Adobe is attempting to solve a difficult problem with limited resources, and the results aren't always ideal.
    If you want to deploy to Android and iOS, and you write two native apps, you face a 100% risk that you'll have to write your app twice. While this may not take twice as long as writing it once, it will come close.
    If you use AIR, you only have to write your app once, but you face other risks.
    Here's the problem. In AIR, Adobe is attempting to create a framework that translates ActionScript into bytecode for two different platforms. This isn't easy. Every time Apple or Google upgrades their operating system Adobe has to try to refine AIR so that it translates everything correctly for the new OS. AIR also has to maintain backward compatability with all previous OSs (is that the plural of OS?). AIR also has to work with many different models of Android and iOS devices. This includes supporting most, though not all, of the many different capabilities that these OSs support. Adobe, wisely, doesn't try to support every new feature immediately. Instead, it picks and chooses which new features it will support, and how soon. But even taking this approach I have the impression that their task is daunting.
    If you research this forum you'll find numerous examples of people complaining about features that don't quite work correctly. For example, I've put ~6 developer months into developing a language learning app, only to find that AIR's MP3 playback support has some limitations which severely impact the playback of voice recordings, which severely degrades the value of my app. I'm hoping that Adobe will fix this bug, but it's been two months now, with no movement. Another serious bug, involving audio recording using the device microphone, took three months to get fixed. During that period I had no idea whether it would get fixed, or whether I'd have to disable an important feature of my app on iOS.
    So, you want "without worries"?  
    Some people are lobbying Adobe to include support for Windows Phone in the AIR framework. IMHO, this is madness. Adobe clearly has limited resources. Let them first focus on making basic features like MP3 playback work properly on the platforms that they already support.
    The same issues probably apply to all the other cross-platform development frameworks - Sencha, Xamarin, etc. They face the same difficult technical challenges. I can't speak to the question of how well they're addressing them, but I'd want research them carefully before I invested a lot of time into developing with them.
    With regards to AIR, here's my advice: Before you start a non-trivial project using AIR, make a list of all the things that your app will do, then see if you can find existing apps created with AIR that do these things. Make sure that the feature works on both Android and iOS. You won't be able to test on every device that you'd like to support, but pick a few and test on them.
    You don't need to worry about your app's logic - ActionScript is great for that - and AIR translates it just fine. But think carefully about your app's 'skin' - all the ways that you want it to interact with the outside world - input and output - and confirm that apps exist that demonstrate that AIR can handle these features. Also think about the app's infrastructure - network interactions - database interactions - etc.
    You'll probably end up with a list of features that you haven't been able to confirm. You can vet these by creating a proof of concept that confirms that AIR will support these needs. Do this before you start developing the full app. Once that's done, pray that everything that works now will continue to work with future OSs and devices. Adobe has a pretty good record on this sort of things, but there aren't any guarantees.
    Don't worry, be happy        ?
    HTH,
    Douglas

  • Future of Swing Developement in JDeveloper 11g  ?

    The Swing part (in the preview) still is unfortunately far behind NetBeans (have a look at Version 6 M9 Matisse with JPA beans binding, not as good as ADF but...) and others, are there any plans to integrate Matisse and/or JSR 296 in the production release? Or is JSF the only technology on the gui layer that is pushed by Oracle in the future?
    What's with javaFX (F3)??
    best regards
    Charly

    Charly,
    this first 11g technology preview reflects the bulk of the features in the UI clients areas that will be available in the initial 11.1.1.0.0 release when it goes production. I agree that the JDK 6.0 GroupLayout layout manager made popular by NetBean's Project "Matisse" GUI builder is a very interesting one from a developer productivity point of view -- it dupliates some of the productive layout "guides" ideas I believe first seen in the Visual Studio 2005 Windows Forms designer. We have our eye on supporting it in a subsequent 11g release. However, that support unfortunately won't make the initial production release of 11g. We also support the JSR 296 and are following it for including support in a future release, too. Regarding JavaFX (F3), just as you are this week, we're getting our first real look at what it means. I assume if it becomes a popular option it will be something to support for future JDev releases as well. We have significant 2/3-tier Swing data binding features that should fit in nicely with JavaFX, but it's honestly too early to say what our plans are there.
    Of course we continue full support of our existing ADF Swing features (including the productive JGoodies FormLayout support we introduced in 10.1.3). We've added a few new interesting ADF Swing components as noted in the 11g "New Features" document, too, as well as rewritten the critically important ADF Business Components Browser testing tool using ADF Swing during this release as a showcase and testbed of ADF Swing functionality.
    While from the new features list you can see we've improved features in many major feature area, in the "UI Clients" area much of the UI-related features in this initial 11g release are out of necessity centered around the significant declarative application development requirements put to us by our Oracle Fusion Applications teams (who are building front-ends using JSF Rich Client). We have thousands of internal apps developers, many of whom have already begun using early builds of our 11g technology platform for development of their next generation of Oracle Fusion Applications.
    In this initial 11g release cycle, given these multitudinous requirements presented to us by our combined Oracle, Peoplesoft, Siebel, and JDEdwards teams, there was reduced bandwidth available for making significant enhancements to our other kinds of UI clients that we continue to support like Struts, ADF Swing, or Mobile clients.
    This definitely does not mean there are not enhancements queued up, waiting to be implemented in future releases in these areas. Only that the initial 11g release doesn't have an "explosion" of new features in those areas.

  • SSO E-Sourcing and SAP GUI for HTML

    Hi,
    We are trying to provide integration between SAP E-Sourcing and SAP ECC via the SAP GUI for HTML. From an E-Sourcing project, we should define a link which will link us to the report via SAP GUI for HTML. Some parameters are automatically transferred via the URL so that the report will be prefiltered.
    The problem arises that we cannot create a SSO mechanism between SAP E-Sourcing and SAP GUI for HTML. The only documentation we can find is how to setup this SSO between the Portal and ESO (only included going from the EP to ESO). We need to find a way to do the opposite, i.e. SSO from ESO to SAP / EP.
    Thnx,
    Bram

    Dear Chong,
    I have came across the following information about SAP GUI For HTML
    With the version 7.02 / 7.20 of the NW Application Server
    the SAP GUI for HTML has been completely
    reworked.
    1.The rendering is now based on Unified
    Rendering which is also used by many other
    SAP UI technologies.
    2.Similar Look & Feel as other UI technologies
    3.Better Portal integration
    4.Full Theme support
    5.Unified client requirements
    But have not came across any note which converts the SAP GUI for HTML to SAP GUI for Windows in appearacne. I think the point 2 mentioned about says that in this version the SAP GUI for HTML will have appearnce like the other UI.
    Pls refer the [link|http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/d06db80d-ebf4-2a10-6b99-faa652c69d5c?QuickLink=index&overridelayout=true]
    Hope it helps.
    Regards,
    Samir

  • Initializing JDialogs or Other GUI Components within SwingWorker

    Hello Every one,
    I have been using SwingWorker class heavily in my application and recently I noticed that If I click on a button twice or thrice the third or 4th it takes more time to perform the action in which SwingWorker is being used. So I started reading more about SwingWorker and after reading number of articles and posts on this forum I believe I am not using SwingWorker correctly. But, I am not still sure ( or may be I am afriad or I am not ready to change my code in so many files and so many locations :(
    So I thought to ask some gurus following questions, in this forum before I proceeed with the code refactoring.
    Question 1:* I am performing GUI operations in doInBackground() is it ok to perform swing operations or create swing components in this method of SwingWorker?
    Example Code :
    jbtnModifyUser Action Event
    private void jbtnModifyUserActionPerformed(java.awt.event.ActionEvent evt) {
    setButtonsState(false);
    final SwingWorker worker = new SwingWorker() {
    protected Object doInBackground() {
    try {
    openUserModifierDialog(SELECTED_PROFILE);
    } catch (Exception ex) {
    ex.printStackTrace();
    } finally {
    return null;
    public void done()
    setButtonsState(true);
    worker.execute();
    }Open Dialog Method wich I call from several other Swing Components Action performed event
    private void openUserModifierDialog(UserProfile profile) throws ServerException {
    UserModifierDialog modifier = new UserModifierDialog(_frame, true, profile);
    modifier.pack();
    modifier.setVisible(true);
    if (modifier.isModified()) {
    resetFields();
    populateUserTable();
    } If I click 3 to 4 times same button the 4th or 5th time the dialog opens after soem delay like 10 seconds. But in first two three click it opens quickly like in 2 to 3 seconds. Is it due to the fact that I am perfoming Swing GUI operations in doInBackgroundMethod()?
    Question 2: Should I use EventQueue.invokeLater() but as far as I have learned from the articles, the actionPerformed events already run on EDT.
    Question 3:_ Each dialog has multiple swing components like combo boxes, tables, tress which it populates after fetching data from the Database in its constructor. It takes like 1 to 2 seconds to bring data and initialize all swing components. Once the Dialog is initialized in the constructor I call my own function to set the existing user details ( As shown below ).
    I need to set all the details before I show the Dialog to the user. To achieve this what is the best practice? Where should I use SwingWorker in current scenario? in Dialog's PostInitialize()? In Dialog's Constructor()? or in the Frame's openModifierDialog()?
    public UserModifierDialog(java.awt.Frame parent, boolean modal, UserProfile userprofile)
    throws ServerException {
    super(parent, modal);
    if (userprofile != null) {
    SELECTED_USER_PROFILE = userprofile;
    }else{
    //throw new Exception("Invalid user record. User profile cannot be null. ");
    initComponents();
    postInitialize(); // my function called to set the user details on the screen
    private void postInitialize() throws ServerException {
    _userManager = new UserManager();
    initializeAllPermissions();
    initializeUserGroups();
    setFields(SELECTED_USER_PROFILE);
    private void initializeUserGroups() throws ServerException {
    _jcbUserGroup.removeAllItems();
    _jcbUserGroup.setModel(new ArrayListModel(_userManager.getAllUserGroups ()));
    _jcbUserGroup.setSelectedIndex(0);
    private void setFields(Userprofile profile) throws ServerException{
    _jlblUserID.setText(profile.getUserid().toString());
    _jtfUserName.setText(profile.getUsername());
    _jtfFirstName.setText(profile.getFirstname());
    _jtfLastName.setText(profile.getLastname());
    _jtfPassword.setText(profile.getPassword());
    _jtfConfirmPassword.setText(profile.getPassword());
    _jtaDescription.setText(profile.getDescription());
    _jcbUserGroup.setSelectedItem(_userManager.getUserGroup(profile.getUserGroupID()));
    } Question 4: I noticed that if I use following code in my openModifierDialog function to execute the worker rather then its own execute method the dialog opens quickly each time.
    Is it good idea to use the following to execute a SwingWorker or I shouldn't as I may fall in some threading issues later on which I am not aware of?
    Thread t = new Thread(worker);
    t.start();Hope to hear some useful comments / answers to my queries.
    Thanks in advance.
    Regards

    Thanks for your prompt reply and answers to my queries.
    Well, I know there are enormous faults in this code. Thats why I am seeking guru's advice to clean the mess. Let me give you breif background of the code. The current code was written by some one else using old version of SwingWorker and I am just trying to clean the mess.
    All the JDialog or Swing Components intialization code was in construct() method of previous SwingWorker. Later on when the SwingWorker became the part of Java SE 6 all application code was refactored and the GUI components initialization was moved to the new function doInBackground().
    The sample code represents the current condition of the code. All I needed was a shortcut to clean the mess or to avoid changes at so many places. But it seems that there is no easy workout for the current situation and I have to change the entire application code. I have gone through the SwingWorker API and tutorial @ [http://java.sun.com/developer/technicalArticles/javase/swingworker] and I am doing following to clean this mess.
    Well the following code is proposed refactoring of the previous code. Hope to hear your comments on it.
    private void jbtnModifyUserActionPerformed(java.awt.event.ActionEvent evt) {
    try{
    openUserModifierDialog(SELECTED_PROFILE);
    } catch (Exception ex) {
    logger.error(ex);
    //show some message here
    } finally {
    private void openUserModifierDialog(UserProfile profile) throws ServerException {
    UserModifierDialog modifier = new UserModifierDialog(_frame, true, profile);
    modifier.pack();
    modifier.setVisible(true);
    if (modifier.isModified()) {
    resetFields();
    //UserModifierDialog Constructor
    public UserModifierDialog(java.awt.Frame parent, boolean modal, UserProfile userprofile)
    throws ServerException {
    super(parent, modal);
    if (userprofile != null) {
    SELECTED_USER_PROFILE = userprofile;
    } else {
    //throw new Exception("Invalid user record. User profile cannot be null. ");
    initComponents();
    postInitialize(); // My function called to set the user details on the screen
    private void postInitialize() {
    _userManager = new UserManager();
    setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.WAIT_CURSOR));
    final SwingWorker worker = new SwingWorker() {
    protected Object doInBackground() {
    try {
    return _userManager.getAllUserGroups(); //returns ArrayList of all user groups from database
    } catch (ServerException ex) {
    //Show Message here
    return null;
    protected void done() {
    try {
    if (get() != null) {
    _jcbUserGroup.setModel(new ArrayListModel((ArrayList) get()));
    _jcbUserGroup.setEditable(false);
    setFields(SELECTED_USER_PROFILE);
    else
    //show some error to user that data is empty
    } catch (InterruptedException ex) {
    //show message here
    } catch (ExecutionException ex) {
    //show message here
    } finally {
    setCursor(java.awt.Cursor.getPredefinedCursor(java.awt.Cursor.DEFAULT_CURSOR));
    worker.execute();
    private void setFields(Userprofile profile) throws ServerException {
    _jlblUserID.setText(profile.getUserid().toString());
    _jtfUserName.setText(profile.getUsername());
    _jtfFirstName.setText(profile.getFirstname());
    _jtfLastName.setText(profile.getLastname());
    _jtfPassword.setText(profile.getPassword());
    _jtfConfirmPassword.setText(profile.getPassword());
    _jtaDescription.setText(profile.getDescription());
    _jcbUserGroup.setSelectedItem(_userManager.getUserGroup(profile.getUserGroupID()));
    }In some places where data is way too huge I am going to use process and publish methods of SwingWorker.
    Now I have another question, how I can notify/throw any exceptions occured inside SwingWorker doInBackground method or done method to the function who executed SwingWorker. Currenlty I am catching the excpetions in the done method and showing a dialog box. But I want to throw it to the postInitialize method the method who created and executed the Worker. What is the best practice of handling exceptions in SwingWorker methods.
    Do you see any problems in proposed refactoring?
    Hope to hear your comments.
    Regards

  • Swings and Threads

    My applet communicates with the database. To ensure that the GUI is updated in the Event-Dispatching Thread I am using a SwingWorker: in construct() the application communicates with DB, and in finished() it updates the GUI. In construct() of the SwingWorker thread I need to create a dialog box to prompt the user for an input like to chose a color or to answer yes/no.
    My question is: Do I need to use invokeAndWait() to create the dialog box? The more general question is: do we use invokeLater() or SwingWorker only for GUIs that are shared by several threads or we have to use it for every swing we create after Event-Dispatching Thread started running?
    Thank you

    One of the fun things about Swing and its EventDispatchThread is that
    doing things wrong (such as performing Swing operations from a thread
    other than the EDT) is that more often than not, even though they are done
    technically wrong, they will still appear to work, especially in small programs.
    (In a larger sense, this applies to any multi-threaded program: things might
    appear to work until the timing changes just a teensy bit...)
    What's even more fun is working with someone who has previously only
    done small programs and because of that, takes this approach in large programs, and then spending a large amount of time trying to figure out why
    something sporadically stops working, only to trace it back to a Swing
    operation being invoked from a thread other than the EDT. Fun!
    You know how to do it correctly.
    You know why to do it correctly.
    But you choose not to. Good luck with that.

  • [Solved] yaourt -Syyua: file owned by 'p7zip' and 'p7zip-gui'

    Lately I got this really strange issue:
    Everytime I run
    yaourt -Syyua
    I get this output:
    :: Synchronizing package databases...
    core 105.4 KiB 392K/s 00:00 [------------------------------------------------] 100%
    extra 1516.7 KiB 1189K/s 00:01 [------------------------------------------------] 100%
    community 1943.1 KiB 1507K/s 00:01 [------------------------------------------------] 100%
    multilib 106.0 KiB 1413K/s 00:00 [------------------------------------------------] 100%
    archlinuxfr 8.6 KiB 4.22M/s 00:00 [------------------------------------------------] 100%
    padevchooser : Orphan
    Foreign packages: \ 95 / 95
    file owned by 'p7zip' and 'p7zip-gui': 'usr/bin/7zFM'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/bin/7zG'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/bin/p7zipForFilemanager'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/7z.sfx'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/7zFM'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/7zG'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/af.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ar.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ast.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/az.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ba.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/be.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/bg.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/bn.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/br.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ca.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/cs.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/cy.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/da.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/de.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/el.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/en.ttt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/eo.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/es.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/et.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/eu.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ext.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/fa.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/fi.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/fr.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/fur.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/fy.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/gl.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/gu.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/he.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/hi.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/hr.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/hu.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/hy.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/id.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/io.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/is.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/it.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ja.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ka.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/kk.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ko.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ku-ckb.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ku.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/lt.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/lv.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/mk.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/mn.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/mr.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ms.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/nb.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ne.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/nl.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/nn.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/pa-in.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/pl.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ps.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/pt-br.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/pt.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ro.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ru.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/sa.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/si.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/sk.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/sl.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/sq.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/sr-spc.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/sr-spl.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/sv.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ta.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/th.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/tr.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/tt.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/ug.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/uk.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/uz.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/va.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/vi.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/zh-cn.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/Lang/zh-tw.txt'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/7zip.hhc'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/7zip.hhk'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/commands/add.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/commands/bench.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/commands/delete.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/commands/extract.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/commands/extract_full.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/commands/index.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/commands/list.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/commands/style.css'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/commands/test.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/commands/update.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/exit_codes.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/index.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/style.css'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/ar_exclude.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/ar_include.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/ar_no.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/charset.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/exclude.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/include.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/index.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/large_pages.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/list_tech.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/method.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/output_dir.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/overwrite.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/password.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/recurse.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/sfx.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/ssc.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/stdin.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/stdout.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/stop_switch.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/style.css'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/type.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/update.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/volume.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/working_dir.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/switches/yes.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/cmdline/syntax.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/fm/about.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/fm/benchmark.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/fm/index.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/fm/menu.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/fm/options.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/fm/plugins/7-zip/add.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/fm/plugins/7-zip/extract.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/fm/plugins/7-zip/index.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/fm/plugins/7-zip/style.css'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/fm/plugins/index.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/fm/plugins/style.css'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/fm/style.css'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/general/7z.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/general/faq.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/general/formats.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/general/index.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/general/license.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/general/performance.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/general/style.css'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/general/thanks.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/start.htm'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/lib/p7zip/help/style.css'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/share/applications/7zFM.desktop'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/share/icons/hicolor/32x32/apps/p7zip.png'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/share/kde4/services/ServiceMenus/p7zip_compress.desktop'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/share/kde4/services/ServiceMenus/p7zip_compress2.desktop'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/share/kde4/services/ServiceMenus/p7zip_extract.desktop'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/share/kde4/services/ServiceMenus/p7zip_extract_subdir.desktop'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/share/kde4/services/ServiceMenus/p7zip_extract_to.desktop'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/share/kde4/services/ServiceMenus/p7zip_test.desktop'
    file owned by 'p7zip' and 'p7zip-gui': 'usr/share/kde4/services/ServiceMenus/readme.txt'
    When I go to check the file permissions, I see this:
    $ ls -la /usr/bin/7zFM
    -rwxr-xr-x 1 root root 38 30. Okt 2011 /usr/bin/7zFM
    $ ls -la /usr/lib/p7zip/Lang
    total 1340
    drwxr-xr-x 2 root root 4096 30. Okt 2011 .
    drwxr-xr-x 5 root root 4096 30. Okt 2011 ..
    -rw-r--r-- 1 root root 9894 30. Okt 2011 af.txt
    -rw-r--r-- 1 root root 16379 30. Okt 2011 ar.txt
    -rw-r--r-- 1 root root 10186 30. Okt 2011 ast.txt
    -rw-r--r-- 1 root root 13281 30. Okt 2011 az.txt
    -rw-r--r-- 1 root root 17623 30. Okt 2011 ba.txt
    -rw-r--r-- 1 root root 18371 30. Okt 2011 be.txt
    -rw-r--r-- 1 root root 20045 30. Okt 2011 bg.txt
    -rw-r--r-- 1 root root 22508 30. Okt 2011 bn.txt
    -rw-r--r-- 1 root root 10191 30. Okt 2011 br.txt
    -rw-r--r-- 1 root root 13255 30. Okt 2011 ca.txt
    -rw-r--r-- 1 root root 13566 30. Okt 2011 cs.txt
    -rw-r--r-- 1 root root 10163 30. Okt 2011 cy.txt
    -rw-r--r-- 1 root root 12403 30. Okt 2011 da.txt
    -rw-r--r-- 1 root root 13970 30. Okt 2011 de.txt
    -rw-r--r-- 1 root root 21044 30. Okt 2011 el.txt
    -rw-r--r-- 1 root root 12505 30. Okt 2011 en.ttt
    -rw-r--r-- 1 root root 10164 30. Okt 2011 eo.txt
    -rw-r--r-- 1 root root 13977 30. Okt 2011 es.txt
    -rw-r--r-- 1 root root 12938 30. Okt 2011 et.txt
    -rw-r--r-- 1 root root 12286 30. Okt 2011 eu.txt
    -rw-r--r-- 1 root root 13602 30. Okt 2011 ext.txt
    -rw-r--r-- 1 root root 16143 30. Okt 2011 fa.txt
    -rw-r--r-- 1 root root 13621 30. Okt 2011 fi.txt
    -rw-r--r-- 1 root root 14109 30. Okt 2011 fr.txt
    -rw-r--r-- 1 root root 13360 30. Okt 2011 fur.txt
    -rw-r--r-- 1 root root 11954 30. Okt 2011 fy.txt
    -rw-r--r-- 1 root root 10150 30. Okt 2011 gl.txt
    -rw-r--r-- 1 root root 26159 30. Okt 2011 gu.txt
    -rw-r--r-- 1 root root 15876 30. Okt 2011 he.txt
    -rw-r--r-- 1 root root 26250 30. Okt 2011 hi.txt
    -rw-r--r-- 1 root root 12963 30. Okt 2011 hr.txt
    -rw-r--r-- 1 root root 14041 30. Okt 2011 hu.txt
    -rw-r--r-- 1 root root 18182 30. Okt 2011 hy.txt
    -rw-r--r-- 1 root root 12794 30. Okt 2011 id.txt
    -rw-r--r-- 1 root root 9662 30. Okt 2011 io.txt
    -rw-r--r-- 1 root root 11781 30. Okt 2011 is.txt
    -rw-r--r-- 1 root root 13609 30. Okt 2011 it.txt
    -rw-r--r-- 1 root root 15410 30. Okt 2011 ja.txt
    -rw-r--r-- 1 root root 19279 30. Okt 2011 ka.txt
    -rw-r--r-- 1 root root 17161 30. Okt 2011 kk.txt
    -rw-r--r-- 1 root root 14199 30. Okt 2011 ko.txt
    -rw-r--r-- 1 root root 19177 30. Okt 2011 ku-ckb.txt
    -rw-r--r-- 1 root root 10725 30. Okt 2011 ku.txt
    -rw-r--r-- 1 root root 12727 30. Okt 2011 lt.txt
    -rw-r--r-- 1 root root 10236 30. Okt 2011 lv.txt
    -rw-r--r-- 1 root root 14626 30. Okt 2011 mk.txt
    -rw-r--r-- 1 root root 14198 30. Okt 2011 mn.txt
    -rw-r--r-- 1 root root 17123 30. Okt 2011 mr.txt
    -rw-r--r-- 1 root root 9950 30. Okt 2011 ms.txt
    -rw-r--r-- 1 root root 11271 30. Okt 2011 nb.txt
    -rw-r--r-- 1 root root 21349 30. Okt 2011 ne.txt
    -rw-r--r-- 1 root root 13670 30. Okt 2011 nl.txt
    -rw-r--r-- 1 root root 11004 30. Okt 2011 nn.txt
    -rw-r--r-- 1 root root 22337 30. Okt 2011 pa-in.txt
    -rw-r--r-- 1 root root 13559 30. Okt 2011 pl.txt
    -rw-r--r-- 1 root root 14620 30. Okt 2011 ps.txt
    -rw-r--r-- 1 root root 13330 30. Okt 2011 pt-br.txt
    -rw-r--r-- 1 root root 13466 30. Okt 2011 pt.txt
    -rw-r--r-- 1 root root 13460 30. Okt 2011 ro.txt
    -rw-r--r-- 1 root root 18564 30. Okt 2011 ru.txt
    -rw-r--r-- 1 root root 27889 30. Okt 2011 sa.txt
    -rw-r--r-- 1 root root 24592 30. Okt 2011 si.txt
    -rw-r--r-- 1 root root 13780 30. Okt 2011 sk.txt
    -rw-r--r-- 1 root root 11907 30. Okt 2011 sl.txt
    -rw-r--r-- 1 root root 11116 30. Okt 2011 sq.txt
    -rw-r--r-- 1 root root 18547 30. Okt 2011 sr-spc.txt
    -rw-r--r-- 1 root root 12835 30. Okt 2011 sr-spl.txt
    -rw-r--r-- 1 root root 13207 30. Okt 2011 sv.txt
    -rw-r--r-- 1 root root 20036 30. Okt 2011 ta.txt
    -rw-r--r-- 1 root root 23571 30. Okt 2011 th.txt
    -rw-r--r-- 1 root root 12954 30. Okt 2011 tr.txt
    -rw-r--r-- 1 root root 17867 30. Okt 2011 tt.txt
    -rw-r--r-- 1 root root 18251 30. Okt 2011 ug.txt
    -rw-r--r-- 1 root root 19186 30. Okt 2011 uk.txt
    -rw-r--r-- 1 root root 10221 30. Okt 2011 uz.txt
    -rw-r--r-- 1 root root 11686 30. Okt 2011 va.txt
    -rw-r--r-- 1 root root 13219 30. Okt 2011 vi.txt
    -rw-r--r-- 1 root root 12457 30. Okt 2011 zh-cn.txt
    -rw-r--r-- 1 root root 12544 30. Okt 2011 zh-tw.txt
    Does anyone know what's going on here? Thanks in advance for your help!
    Last edited by derblub (2013-04-28 11:09:04)

    Thanks for the link, unfortunately p7zip-extra didn't add anything to the context-menu. Will continue searching, since I liked the 7zip menu. Anyways - my main problem is now solved - shouldn't be a big problem to manually add that menu back again.
    Edit: For future readers - just got back the context-menu entries by re-installing following:
    pacman -S p7zip desktop-file-utils wxgtk
    Last edited by derblub (2013-04-28 11:39:20)

  • Malware and Other Various Nasties

    Hello Everyone
    I am looking for some real solid feedback when it comes to the various onslaught on nasty infectious computer viruses , malware , spyware and things such as viruses and key loggers.
    Would anyone know of any real solid top notch programs / applications that work very well with a Mac?
    Thanks To All !
    - Best Regards!

    You want the whole nine yards?!
    Do not be tricked by 'scareware' that tempts computer users to download fake anti-virus software that may itself be malware.
    Fake anti-virus software that infect PCs with malicious code are a growing threat, according to a study by Google. Its analysis of 240m web pages over 13 months showed that fake anti-virus programs accounted for 15% of all malicious software.
    Scammers trick people into downloading programs by convincing them that their PC is infected with a virus.
    Once installed, the software may steal data or force people to make a payment to register the fake product.
    Beware of PDF files from unknown sources. A security firm announced that by its counting, malicious Reader documents made up 80% of all exploits at the end of 2009.:
    http://www.computerworld.com/s/article/9157438/RoguePDFs_account_for_80_of_all_exploits_saysresearcher
    No viruses that can attack OS X have so far been detected 'in the wild', i.e. in anything other than laboratory conditions.
    It is possible, however, to pass on a Windows virus to another Windows user, for example through an email attachment. To prevent this all you need is the free anti-virus utility ClamXav, which you can download for Tiger and Leopard from (on no account install Norton Anti-Virus on a Mac running OS X):
    http://www.clamxav.com/
    The new version for Snow Leopard is available here:
    http://www.clamxav.com/index.php?page=v2beta
    (Note: ClamAV adds a new user group to your Mac. That makes it a little more difficult to remove than some apps. You’ll find an uninstaller link in ClamXav’s FAQ page online.)
    However, the appearance of Trojans and other malware that can possibly infect a Mac seems to be growing, but is a completely different issue to viruses.
    If you allow a Trojan to be installed, the user's DNS records can be modified, redirecting incoming internet traffic through the attacker's servers, where it can be hijacked and injected with malicious websites and pornographic advertisements. The trojan also installs a watchdog process that ensures the victim's (that's you!) DNS records stay modified on a minute-by-minute basis.
    You can read more about how, for example, the OSX/DNSChanger Trojan works here:
    http://www.f-secure.com/v-descs/trojanosxdnschanger.shtml
    SecureMac has introduced a free Trojan Detection Tool for Mac OS X. It's available here:
    http://macscan.securemac.com/
    The DNSChanger Removal Tool detects and removes spyware targeting Mac OS X and allows users to check to see if the trojan has been installed on their computer; if it has, the software helps to identify and remove the offending file. After a system reboot, the users' DNS records will be repaired.
    (Note that a 30 day trial version of MacScan can be downloaded free of charge from:
    http://macscan.securemac.com/buy/
    and this can perform a complete scan of your entire hard disk. After 30 days free trial the cost is $29.99. The full version permits you to scan selected files and folders only, as well as the entire hard disk. It will detect (and delete if you ask it to) all 'tracker cookies' that switch you to web sites you did not want to go to.)
    A white paper has recently been published on the subject of Trojans by SubRosaSoft, available here:
    http://www.macforensicslab.com/ProductsAndServices/index.php?mainpage=document_general_info&cPath=11&productsid=174
    Also, beware of MacSweeper:
    MacSweeper is malware that misleads users by exaggerating reports about spyware, adware or viruses on their computer. It is the first known "rogue" application for the Mac OS X operating system. The software was discovered by F-Secure, a Finland based computer security software company on January 17, 2008
    http://en.wikipedia.org/wiki/MacSweeper
    On June 23, 2008 this news reached Mac users:
    http://www.theregister.co.uk/2008/06/23/mac_trojan/
    More on Trojans on the Mac here:
    http://www.technewsworld.com/story/63574.html?welcome=1214487119
    This was published on July 25, 2008:
    Attack code that exploits flaws in the net's addressing system are starting to circulate online, say security experts.
    The code could be a boon to phishing gangs who redirect web users to fake bank sites and steal login details.
    In light of the news net firms are being urged to apply a fix for the loop-hole before attacks by hi-tech criminals become widespread.
    Net security groups say there is anecdotal evidence that small scale attacks are already happening.
    Further details here: http://news.bbc.co.uk/2/hi/technology/7525206.stm
    A further development was the Koobface malware that can be picked up from Facebook (already a notorious site for malware, like many other 'social networking' sites like Twitter etc), as reported here on December 9, 2008:
    http://news.bbc.co.uk/newsbeat/hi/technology/newsid_7773000/7773340.stm
    You can keep up to date, particularly about malware present in some downloadable pirated software, at the Securemac site:
    http://www.securemac.com/
    There may be other ways of guarding against Trojans, viruses and general malware affecting the Mac, and alternatives will probably appear in the future. In the meantime the advice is: be careful where you go on the web and what you download!
    If you think you may have acquired a Trojan, and you know its name, you can also locate it via the Terminal:
    http://theappleblog.com/2009/04/24/mac-botnet-how-to-ensure-you-are-not-part-of- the-problem/
    As to the recent 'Conficker furore' affecting Intel-powered computers, MacWorld recently had this to say:
    http://www.macworld.co.uk/news/index.cfm?email&NewsID=25613
    Although any content that you download has the possibility of containing malicious software, practising a bit of care will generally keep you free from the consequences of anything like the DNSChanger trojan.
    1. Avoid going to suspect and untrusted Web sites, especially p'orn'ography sites.
    2. Check out what you are downloading. Mac OS X asks you for you administrator password to install applications for a reason! Only download media and applications from well-known and trusted Web sites. If you think you may have downloaded suspicious files, read the installer packages and make sure they are legit. If you cannot determine if the program you downloaded is infected, do a quick Internet search and see if any other users reported issues after installing a particular program. A recent example is of malware distributed through innocent looking free screensavers: http://www.zdnet.com/blog/security/malware-watch-free-mac-os-x-screensavers-bund led-with-spyware/6560?tag=nl.e589
    3. Use an antivirus program like ClamXav. If you are in the habit of downloading a lot of media and other files, it may be well worth your while to run those files through an AV application.
    4. Use Mac OS X's built-in Firewalls and other security features.
    5. Stop using LimeWire. LimeWire (and other peer-to-peer sharing applications and download torrents) are hotbeds of potential software issues waiting to happen to your Mac. Everything from changing permissions to downloading trojans and other malicious software can be acquired from using these applications. Similar risks apply to using Facebook, Twitter, MySpace, YouTube and similar sites which are prone to malicious hacking: http://news.bbc.co.uk/1/hi/technology/8420233.stm
    6. Resist the temptation to download pirated software. After the release of iWork '09 earlier this year, a Trojan was discovered circulating in pirated copies of Apple's productivity suite of applications (as well as pirated copies of Adobe's Photoshop CS4). Security professionals now believe that the botnet (from iServices) has become active. Although the potential damage range is projected to be minimal, an estimated 20,000 copies of the Trojan have been downloaded. SecureMac offer a simple and free tool for the removal of the iBotNet Trojan available here:
    http://macscan.securemac.com/files/iServicesTrojanRemovalTool.dmg
    Also, there is the potential for having your entire email contact list stolen for use for spamming:
    http://www.nytimes.com/2009/06/20/technology/internet/20shortcuts.html?_r=1
    NOTE: Snow Leopard, OS 10.6.x, offers additional security to that of previous versions of OS X, but not to the extent that you should ignore the foregoing:
    http://www.apple.com/macosx/security/
    Apple's 10.6.4 operating system upgrade silently updated the malware protection built into Mac OS X to protect against a backdoor Trojan horse that can allow hackers to gain remote control over your treasured iMac or MacBook.
    http://www.sophos.com/blogs/gc/g/2010/06/18/apple-secretly-updates
    Finally, do not install Norton Anti-Virus on a Mac as it can seriously damage your operating system. Norton Anti-Virus is not compatible with Apple OS X.

  • Error swing and j2ee

    I have an application based on on j2ee. All the logica of the program this in J�E but the part client I am doing it in swing.
    I want to know if there is "something" with which I can unite the transference of information between the layer swing and j2ee.
    But of all ways I am making an example fast but I have an error and not like solving it.
    I am using Oracle9i, JDevelepoer 9.0.5 and the code is:
    Context context = new InitialContext();
    clienteBOHome = (ClienteBOHome)PortableRemoteObject.narrow(context.lookup("java:comp/env/ejb/cliente"), ClienteBOHome.class);
    clienteBO = clienteBOHome.create();
    colClientes = (Vector)clienteBO.listarClientes();
    And the error is:
    javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
    at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:640)
    at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:243)
    at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:280)
    at javax.naming.InitialContext.lookup(InitialContext.java:347)
    at com.tsawi.pm.gui.ListarClientes.jbInit(ListarClientes.java:58)
    at com.tsawi.pm.gui.ListarClientes.<init>(ListarClientes.java:44)

    Hi raguero,
    if you want to create and use a naming context, you need a JNDI service provider. A JNDI service provider is who provides a client 2 thinks:
    1) A Context Factory, which JNDI API uses tu build JNDI context
    2) A service listening on an host-port
    If you deploy your J2EE app under J2EE RI, you connect to JNDI service by this url:
    iiop://hostname:1050 (by default)
    and context factory to use is "com.sun.jndi.cosnaming.CNCtxFactory"
    so you got context like this:
    Properties prop=new Properties();
    prop.add(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.cosnaming.CNCtxFactory");
    prop.add(Context.PROVIDER_URL,"iiop://hostname:1050")
    Context jndiContext=new InitialContext(prop);
    Obvious, com.sun.jndi.cosnaming.CNCtxFactory class must be in client classpath.
    Fil

  • (ios5 ipad bugs)I can't get changes of album art, artist, album and other tags to show up in the iPad music player, but they show up correctly in the iTunes device view. Certain random songs do not sync correctly.   Wifi sync hasn't worked yet.

    (ios5 ipad bugs)I can't get changes of album art, artist, album and other tags to show up in the iPad music player, but they show up correctly in the iTunes device view. Certain random songs do not sync correctly.   Wifi sync hasn't worked yet.
    I mostly use technology for education and professional audiovisuals and lights.
    I don't sync  music because I use music from at least 4 different computers. (manually mange music)
    I use my iPad to play performance tracks for church and a local gospel group out of our church, Won4Christ.
    I chose to buy the iPad because the laptop of one of the group members (dellxps running iTunes) was randomly losing and mixing up music and I wanted a more stable option that was bigger than my iPod touch.
    I tried to add some data to music libraries that I previously added to my iPad, but the data only shows up when looking at the device in iTunes.
    Wifi sync has not worked on either my laptop or desktop ( both running windows 7 enterprise 64 and newest iTunes) not really a big issue, but very annoying
    When browsing through library playlist albums on the iPad, random artwork shows up on playlists with no artwork that you touch while dragging, and it does not go away until you change to another navigation tab and back.
    Random songs out of hundreds that I added showed up in iTunes grayed out with a sync circle beside them.  Those songs would play back okay on the iPad but were unplayable through the iTunes device view.  I had to delete the songs manually through the library along with the playlist and add them again. 
    These seem to be major stability bugs in the "new" music app and iTunes.  My only option right now seems to be to delete the songs that I want to change and re-add them with the changes already applied rather than changing the id3 tags and artwork on the existing music. I hope apple will release updates to resolve these issues. 
    Thank you for actually making it to the end of this manuscript of annoyances.

    Just wondered if anyone had any other suggestions.

  • For iTunes Match, how come some songs "match" on an album and other songs on the same album "upload" without matching?

    For iTunes Match, how come some songs "match" on an album and other songs on the same album "upload" without matching?  All songs are available on iTunes.  I don't get it!  Any way to manually match songs that iTunes apparently can't match?  I have hundreds in this unmatched state.

    gsl wrote:
    Shazam has NO problem determining what these songs are. Maybe Apple needs to consider licensing their technology as it seems MUCH more accurate than what they are doing.
    You aren't comparing like with like.
    The main task that Shazam has is to identify the name or a track and the artist. I believe that it suggests the album as well, but if it gets that wrong then it doesn't really matter too much.
    With iTunes Match, getting the album (i.e. identifying which version it is) is much more important. If it gets that wrong then it breaks up the flow of an album. This makes the task that match has very much harder.
    In fact, there is a strong argument to say that currently the problem iTunes has is that it is matching too many songs, resulting in matches from different albums.
    I'm sure that match is not struggling to identify whether it has a song or not, but whether it has the correct version of a song. When you introduce different masterings into the process then, depending on the thresholds set, it is probably correct in concluding that it hasn't got a particular version, even if you think it has.
    The solution would appear to me to be a tweaking of the matching thresholds along with the ability to force an upload, but we just don't know what restrictions they have (remember that if Shazam gets it wrong the it doesn't present you with a copy of a new track that you didn't have previously). It is almost certainly not just a case of improving their technology.

Maybe you are looking for