Search Results

Search found 43642 results on 1746 pages for 'oracle public sector'.

Page 452/1746 | < Previous Page | 448 449 450 451 452 453 454 455 456 457 458 459  | Next Page >

  • Lettre aux Payeurs de Novembre 2011/Global Payroll France November 2011 Newsletter

    - by Carolyn Cozart
    Global Payroll France November 2011 NewsletterPer the new publishing process started back in September, the Global Payroll France Newsletter is published on My Oracle Support. You will find the November 2011 letter under the following Doc ID: 1377174.1. Enjoy, Lettre aux Payeurs de Novembre 2011La Lettre aux payeurs française de novembre est disponible sur My Oracle Support, sous le numéro de document : 1377174.1, selon le nouveau processus de diffusion initié en septembre dernier. Bonne lecture,

    Read the article

  • A brief note for customers running SOA Suite on AIX platforms

    - by christian
    When running Oracle SOA Suite with IBM JVMs on the AIX platform, we have seen performance slowdowns and/or memory leaks. On occasion, we have even encountered some OutOfMemoryError conditions and the concomittant Java coredump. If you are experiencing this issue, the resolution may be to configure -Dsun.reflect.inflationThreshold=0 in your JVM startup parameters. https://www.ibm.com/developerworks/java/library/j-nativememory-aix/ contains a detailed discussion of the IBM AIX JVM memory model, but I will summarize my interpretation and understanding of it in the context of SOA Suite, below. Java ClassLoaders on IBM JVMs are allocated a native memory area into which they are anticipated to map such things as jars loaded from the filesystem. This is an excellent memory optimization, as the file can be loaded into memory once and then shared amongst many JVMs on the same host, allowing for excellent horizontal scalability on AIX hosts. However, Java ClassLoaders are not used exclusively for loading files from disk. A performance optimization by the Oracle Java language developers enables reflectively accessed data to optimize from a JNI call into Java bytecodes which are then amenable to hotspot optimizations, amongst other things. This performance optimization is called inflation, and it is executed by generating a sun.reflect.DelegatingClassLoader instance dynamically to inject the Java bytecode into the virtual machine. It is generally considered an excellent optimization. However, it interacts very negatively with the native memory area allocated by the IBM JVM, effectively locking out memory that could otherwise be used by the Java process. SOA Suite and WebLogic are both very large users of reflection code. They reflectively use many code paths in their operation, generating lots of DelegatingClassLoaders in normal operation. The IBM JVM slowdown and subsequent OutOfMemoryError are as a direct result of the Java memory consumed by the DelegatingClassLoader instances generated by SOA Suite and WebLogic. Java garbage collection runs more frequently to try and keep memory available, until it can no longer do so and throws OutOfMemoryError. The setting sun.reflect.inflationThreshold=0 disables this optimization entirely, never allowing the JVM to generate the optimized reflection code. IBM JVMs are susceptible to this issue primarily because all Java ClassLoaders have this native memory allocation, which is shared with the regular Java heap. Oracle JVMs don't automatically give all ClassLoaders a native memory area, and my understanding is that jar files are never mapped completely from shared memory in the same way as IBM does it. This results in different behaviour characteristics on IBM vs Oracle JVMs.

    Read the article

  • CVE-2011-1937 Cross-site scripting (XSS) vulnerability in Webmin

    - by chandan
    CVE DescriptionCVSSv2 Base ScoreComponentProduct and Resolution CVE-2011-1937 Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') vulnerability 4.3 Webmin Solaris 10 SPARC: 145006-03 X86: 145007-03 This notification describes vulnerabilities fixed in third-party components that are included in Sun's product distribution.Information about vulnerabilities affecting Oracle Sun products can be found on Oracle Critical Patch Updates and Security Alerts page.

    Read the article

  • Lifecycle Technology Delivers AutoVue Visualization Integration for SAP

    Lifecycle Technology is an Oracle development partner and has built a Connector for Oracle's AutoVue visualization solution and SAP. Their area of expertise lies in integrating AutoVue visualization and printing solutions with SAP business processes within Asset Lifecycle Management,Product Lifecycle Management,and Document Management Systems. Lifecycle visually enables a variety of SAP workflows and processes in manufacturing,plant maintenance,and production. Their solutions allow SAP enterprise customers to view technical or engineering documents in the appropriate business context and/or print them as required in their workflows, improving productivity and decision making.

    Read the article

  • The importance of Business Intelligence and new emerging trends

    Joe Thomas, Sr Product Director, Business Intelligence Applications and Jon Corliss, Manager, Oracle Enterprise Applications for Hitachi Consulting talk with Fred about the importance of Business Intelligence, some of the current trends as well as how Hitachi Consulting is working with customers and Oracle to deliver the benefits of BI.

    Read the article

  • I owe you an explanation

    - by Blueberry Coder
    Welcome to my blog! I am Frédéric Desbiens, a new member of the ADF Product Management team.  I joined Oracle only a few weeks ago. My boss is Grant Ronald, and I have the privilege to work in the same team as Susan Duncan, Frank Nimphius, Lynn Munsinger and Chris Muir. I share with them a passion for all things Java and ADF. With this blog, I hope to help you be more successful with our products – whether you are a customer or a partner. You may have heard of me before. Maybe you have my book in your bookshelf; or maybe we met at a conference. I went to JavaOne, ODTUG Kaleidoscope and Oracle OpenWorld in the past, when I worked for a major consulting firm. I will spare you all the details of my career; you can have a look at my LinkedIn profile if you are curious about my past.  Usually, my posts will be of a technical nature, and will focus on Oracle ADF and Oracle JDeveloper. SOA and portals have always been two topics of interest for me, however, and I will write about them. Over time, you will probably get acquainted with my « strategic » side as well. I devour history books, and always had a tendency to look at the big picture. I will probably not resist to the temptation of mixing IT and history, but this will be occasional, I promise!  At this point, I owe you an explanation about the title of the blog. I am French-Canadian, and wanted to evoke my roots in an obvious yet unobtrusive way. I was born in Chicoutimi, which is one of the main cities found in the Saguenay-Lac-Saint-Jean region. Traditionally, a large part of the wild blueberry production of the province of Québec come from there. A common nickname for the inhabitants is thus Les Bleuets, « The Blueberries » in English. I hope to see you around. You can also follow me on Twitter under  @BlueberryCoder.

    Read the article

  • 6 Facts About GlassFish Announcement

    - by Bruno.Borges
    To help clarify the message about the recent roadmap for GlassFish, I decided to put together 6 facts about the announcement, future of GlassFish, and the Java EE platform as a whole:  "Since Oracle announced the end of commercial support for future Oracle GlassFish Server versions, the Java EE world has started wondering what will happen to GlassFish Server Open Source Edition. Unfortunately, there's a lot of misleading information going around. So let me clarify some things with facts, not FUD." Read full story here

    Read the article

  • The Relationship Between JD Edwards World and IBM

    Get an update from Denise Grills, Senior Director of Product Strategy and Marketing for Oracle JD Edwards World and Gordon Orr, Global Systems Marketing Manager – Oracle Alliance on how the two companies have successfully built a partnership that has been very beneficial to their customer base and also get an update on the new POWER Systems Servers.

    Read the article

  • CVE-2009-5022 Buffer Overflow vulnerability in LibTIFF

    - by chandan
    CVE DescriptionCVSSv2 Base ScoreComponentProduct and Resolution CVE-2009-5022 Buffer Overflow vulnerability 6.8 LibTIFF Solaris 8 SPARC: 139093-03 X86: 139094-03 Solaris 9 SPARC: 125673-05 X86: 125674-05 Solaris 10 SPARC: 119900-13 X86: 119901-12 This notification describes vulnerabilities fixed in third-party components that are included in Sun's product distribution.Information about vulnerabilities affecting Oracle Sun products can be found on Oracle Critical Patch Updates and Security Alerts page.

    Read the article

  • Silverlight/Web Service Serializing Interface for use Client Side

    - by Steve Brouillard
    I have a Silverlight solution that references a third-party web service. This web service generates XML, which is then processed into objects for use in Silverlight binding. At one point we the processing of XML to objects was done client-side, but we ran into performance issues and decided to move this processing to the proxies in the hosting web project to improve performance (which it did). This is obviously a gross over-simplification, but should work. My basic project structure looks like this. Solution Solution.Web - Holds the web page that hosts Silverlight as well as proxies that access web services and processes as required and obviously the references to those web services). Solution.Infrastructure - Holds references to the proxy web services in the .Web project, all genned code from serialized objects from those proxies and code around those objects that need to be client-side. Solution.Book - The particular project that uses the objects in question after processed down into Infrastructure. I've defined the following Interface and Class in the Web project. They represent the type of objects that the XML from the original third-party gets transformed into and since this is the only project in the Silverlight app that is actually server-side, that was the place to define and use them. //Doesn't get much simpler than this. public interface INavigable { string Description { get; set; } } //Very simple class too public class IndexEntry : INavigable { public List<IndexCM> CMItems { get; set; } public string CPTCode { get; set; } public string DefinitionOfAbbreviations { get; set; } public string Description { get; set; } public string EtiologyCode { get; set; } public bool HighScore { get; set; } public IndexToTabularCommandArguments IndexToTabularCommandArgument { get; set; } public bool IsExpanded { get; set; } public string ManifestationCode { get; set; } public string MorphologyCode { get; set; } public List<TextItem> NonEssentialModifiersAndQualifyingText { get; set; } public string OtherItalics { get; set; } public IndexEntry Parent { get; set; } public int Score { get; set; } public string SeeAlsoReference { get; set; } public string SeeReference { get; set; } public List<IndexEntry> SubEntries { get; set; } public int Words { get; set; } } Again; both of these items are defined in the Web project. Notice that IndexEntry implments INavigable. When the code for IndexEntry is auto-genned in the Infrastructure project, the definition of the class does not include the implmentation of INavigable. After discovering this, I thought "no problem, I'll create another partial class file reiterating the implmentation". Unfortunately (I'm guessing because it isn't being serialized), that interface isn't recognized in the Infrastructure project, so I can't simply do that. Here's where it gets really weird. The BOOK project CAN see the INavigable interface. In fact I use it in Book, though Book has no reference to the Web Service in the Web project where the thing is define, though Infrastructure does. Just as a test, I linked to the INavigable source file from indside the Infrastructure project. That allowed me to reference it in that project and compile, but causes havoc in the Book project, because now there's a conflick between the one define in Infrastructure and the one defined in the Web project's web service. This is behavior I would expect. So, to try and sum up a bit. Web project has a web service that process data from a third-party service and has a class and interface defined in it. The class implements the interface. The Infrastructure project references the web service in the Web Project and the Book project references the Infrastructure project. The implmentation of the interface in the class does NOT serialize down, so the auto-genned code in INfrastructure does not show this relationship, breaking code further down-stream. The Book project, whihc is further down-stream CAN see the interface as defined in the Web Project, even though its only reference is through the Infrastructure project; whihc CAN'T see it. Am I simple missing something easy here? Can I apply an attribute to either the Interface definition or to the its implmentation in the class to ensure its visibility downstream? Anything else I can do here? I know this is a bit convoluted and anyone still with me here, thanks for your patience and any advice you might have. Cheers, Steve

    Read the article

  • New Virtual Compute Appliance Videos

    - by Cinzia Mascanzoni
    Watch the latest Virtual Compute Appliance videos to aid your conversations with partners and customers! Virtual Compute Appliance Flash demo shows your customers and partners the business benefits. VCA Product demo. Tier1 Customer Testimonial Video of using Oracle's Virtual Compute Appliance to build a private cloud virtualization platform to host its customers’ Oracle Enterprise and Windows applications. Centroid Partner Testimonial Video.

    Read the article

  • Impatient Customers Make Flawless Service Mission Critical for Midsize Companies

    - by Richard Lefebvre
    At times, I can be an impatient customer. But I’m not alone. Research by The Social Habit shows that among customers who contact a brand, product, or company through social media for support, 32% expect a response within 30 minutes and 42% expect a response within 60 minutes! 70% of respondents to another study expected their complaints to be addressed within 24 hours, irrespective of how they contacted the company. I was intrigued when I read a recent blog post by David Vap, Group Vice President of Product Development for Oracle Service Cloud. It’s about “Three Secrets to Innovation” in customer service. In David’s words: 1) Focus on making what’s hard simple 2) Solve real problems for real people 3) Don’t just spin a good vision. Do something about it  I believe midsize companies have a leg up in delivering on these three points, mainly because they have no other choice. How can you grow a business without listening to your customers and providing flawless service? Big companies are often weighed down by customer service practices that have been churning in bureaucracy for years or even decades. When the all-in-one printer/fax/scanner I bought my wife for Christmas (call me a romantic) failed after sixty days, I wasted hours of my time navigating the big brand manufacturer’s complex support and contact policies only to be offered a refurbished replacement after I shipped mine back to them. There was not a happy ending. Let's just say my wife still doesn't have a printer.  Young midsize companies need to innovate to grow. Established midsize company brands need to innovate to survive and reach the next level. Midsize Customer Case Study: The Boston Globe The Boston Globe, established in 1872 and the winner of 22 Pulitzer Prizes, is fighting the prevailing decline in the newspaper industry. Businessman John Henry invested in the Globe in 2013 because he, “…believes deeply in the future of this great community, and the Globe should play a vital role in determining that future”. How well the paper executes on its bold new strategy is truly mission critical—a matter of life or death for an industry icon. This customer case study tells how Oracle’s Service Cloud is helping The Boston Globe “do something about” and not just “spin” it’s strategy and vision via improved customer service. For example, Oracle RightNow Chat Cloud Service is now the preferred support channel for its online environments. The average e-mail or phone call can take three to four minutes to complete while the average chat is only 30 to 40 seconds. It’s a great example of one company leveraging technology to make things simpler to solve real problems for real people. Related: Oracle Cloud Service a leader in The Forrester Wave™: Customer Service Solutions For Small And Midsize Teams, Q2 2014

    Read the article

  • Business Intelligence goes Big Data

    - by Alliances & Channels Redaktion
    Big Data stellt die nächste große Herausforderung für die IT-Branche dar: Massen von Daten aus immer mehr Quellen – aus sozialen Netzwerken, Telekommunikations- und Weblogs, RFID-Lesern etc. – müssen logisch verknüpft, in Echtzeit integriert und verarbeitet werden. Doch wie sieht es mit der praktischen Umsetzung aus? Eine europaweite Studie von Steria Mummert Consulting zeigt: Lediglich 28 % der Unternehmen haben bereits heute eine übergreifende, abgestimmte Business-Intelligence-Strategie implementiert. Vorherrschend sind BI-Insellösungen, die schon jetzt an den Grenzen ihrer Kapazität arbeiten. Daten werden also bisher nur eingeschränkt als wertschöpfende Ressource genutzt! Das Ergebnis der Studie klingt erschreckend, doch Unternehmen können es zu Ihrem Vorteil nutzen: Wer jetzt das Thema Big Data anpackt, kann sich einen gewinnbringenden Vorsprung vor dem Wettbewerb sichern. Wie sieht die Analyse-Umgebung der Zukunft aus? Wie und wo kann Big Data für den Geschäftserfolg genutzt werden? Antworten darauf liefert die Kunden-Event Reihe von Oracle und dem Oracle Platinum Partner Steria Mummert Consulting: Hier werden Strategien entwickelt, wie Unternehmen mit Information Discovery ihr BI-Potenzial auf dem Weg zur Big Data Schritt für Schritt ausbauen können. Highlights aus München Durchweg positives Feedback haben wir aus München, der ersten Station der Eventreihe am 23.7., erhalten: Nicht nur die tolle Location, das "La Villa" im Bamberger Haus, überzeugte. Die 31 Teilnehmerinnen und Teilnehmer konnten auch inhaltlich eine Menge mitnehmen – unter anderem einen konkreten Vorschlag für ihre eigene Roadmap in Richtung Big Data. Die Ausgangsfrage des Tages lautete – einfach und umfassend zugleich: Wie können wir den Überblick in einer komplexen Welt behalten? Den Status quo in Europa für Business Intelligence präsentierte Steria Mummert Consulting entlang der Europäischen biMA®-Studie 2012/13. Anhand von Anwendungsbeispielen aus ihrer Praxis präsentierten die geladenen Experten von Oracle und Steria Mummert Consulting verschiedene Lösungsansätze. Eine sehr anschauliche Demo zu Endeca zeigte beispielsweise, wie einfach und flexibel ein Dashboard sein kann: Hier gibt es keine vordefinierten Reports, stattdessen können Entscheider die Filter einfach per Drag & Drop verändern und bekommen so einen individuell sturkturierten Überblick über ihre Daten. Einen Ausblick bot die Session zu Oracle Business Analytics für mobile Anwendungen und Real-Time Decisions. Fazit: eine gelungene Mischung aus Überblicks-Informationen und ganz konkreten Ideen für die spezifischen Anwendungsbereiche der Kunden. Die Eventreihe „BI goes Big Data“ macht im August in Hamburg und Frankfurt Station. Die kostenfreie Veranstaltung findet zusammen mit Steria Mummert Consulting statt und richtet sich an Endkunden. In Hamburg am 14.8.2013 – zur AnmeldungIn Frankfurt a.M. am 20.8.2013 – zur Anmeldung

    Read the article

  • A Small Blog About Huge Pages

    - by rickramsey
    Video Interview: What Are Linux Huge Pages?, by Ed Whalen, Oracle ACE Blog: There's Been a Change In How Huge Pages Are Allocated, by Tanel Poder, Oracle ACE Director Blog: Performance Issues with Transparent Huge Pages (thank you, Bjoern Rost!) Web: About the Car, by Smart Ridez LLC, of Woodland Hills, California - Rick Follow me on: Blog | Facebook | Twitter | Personal Twitter | YouTube | The Great Peruvian Novel

    Read the article

  • The MySQL Community talks in Japan, Tokyo

    - by Lenka Kasparova
    There will be 2 community meetups in Tokyo in Japan scheduled for June 2014. Please check and join following:  MySQL Casual Talks vol.6 Date: June 11th, 2014 Time: 19:00 Place: Oracle office, Oracle Aoyama Center, 2-5-8 Kita-Aoyama, Minato-ku, Tokyo, Japan More info & Registration MySQL Cluster Casual Talk #2 Date: June 25th, 2014 Time: 19:00 Place: GMO Yours, Cerulean Tower 11F, Shibuya-kuy, Tokyo, Japan More info & registration

    Read the article

  • Matinale Hyperion - 26 juin 2013 : Agenda disponible

    - by Louisa Aggoune
    INNOVATION - LEADERSHIP - EVOLUTION Votre rendez-vous annuel privilégié avec la communauté Hyperion (clients, partenaires et experts solutions) en partenariat avec les Clubs Utilisateurs Oracle. Réservez dès à présent votre matinée du 26 juin prochain pour échanger sur des cas réels d’utilisation de la solution Oracle Hyperion Enterprise Performance Management lors de cette édition résolument placée sous le signe de l'interactivité. Découvrez l'agenda : cliquez içi Avec la participation de Klee, l'AUFO, Neo Finance, Micropole, Armonia, Shortways Inscrivez-vous vite, nombre de places limité. 26 Juin 2013 8h30 à 11h30 Châteauform' Monceau Rio 4 place Rio de Janeiro 75008 Paris

    Read the article

  • JGridView (Part 2)

    - by Geertjan
    The second sample in the JGrid download is a picture viewer that needs to be seen to be believed. Here it is, integrated into a NetBeans Platform application (click to enlarge it): When you mouse over the images, they change, showing several different images instantaneously. Here's the explorer view above, mainly making use of code from the sample: public class JGridView extends JScrollPane { @Override public void addNotify() { super.addNotify(); final ExplorerManager em = ExplorerManager.find(this); if (em != null) { final JGrid grid = new JGrid(); Node root = em.getRootContext(); final Node[] nodes = root.getChildren().getNodes(); final PicViewerObject[] pics = new PicViewerObject[nodes.length]; for (int i = 0; i < nodes.length; i++) { Node node = nodes[i]; pics[i] = node.getLookup().lookup(PicViewerObject.class); } grid.getCellRendererManager().setDefaultRenderer(new PicViewerRenderer()); grid.setModel(new DefaultListModel() { @Override public int getSize() { return pics.length; } @Override public Object getElementAt(int i) { return pics[i]; } }); grid.setFixedCellDimension(160); grid.addMouseMotionListener(new MouseAdapter() { int lastIndex = -1; @Override public void mouseMoved(MouseEvent e) { if (lastIndex >= 0) { Object o = grid.getModel().getElementAt(lastIndex); if (o instanceof PicViewerObject) { Rectangle r = grid.getCellBounds(lastIndex); if (r != null && !r.contains(e.getPoint())) { ((PicViewerObject) o).setMarker(false); grid.repaint(r); } } } int index = grid.getCellAt(e.getPoint()); if (index >= 0) { Object o = grid.getModel().getElementAt(index); if (o instanceof PicViewerObject) { Rectangle r = grid.getCellBounds(index); if (r != null) { ((PicViewerObject) o).setFraction(((float) e.getPoint().x - (float) r.x) / (float) r.width); ((PicViewerObject) o).setMarker(true); lastIndex = index; grid.repaint(r); } } } } }); grid.getSelectionModel().addListSelectionListener(new ListSelectionListener() { @Override public void valueChanged(ListSelectionEvent e) { //Somehow compare the selected item //with the list of books and find a matching book: int selectedIndex = grid.getSelectedIndex(); for (int i = 0; i < nodes.length; i++) { int picId = pics[i].getId(); if (selectedIndex == picId) { try { em.setSelectedNodes(new Node[]{nodes[i]}); } catch (PropertyVetoException ex) { Exceptions.printStackTrace(ex); } } } } }); setViewportView(grid); } } } The next step is to create a generic JGridView that will handle any kind of object automatically.

    Read the article

  • CVE-2009-0781 Cross-site Scripting vulnerability in Sun Java System Application Server Example Application

    - by chandan
    CVE DescriptionCVSSv2 Base ScoreComponentProduct and Resolution CVE-2009-0781 Cross-site Scripting vulnerability 4.3 Example Calendar Application Sun Java System Application Server EE 8.1 SPARC: 119169-35, 119166-42, 119173-35 X86: 119167-42, 119170-35, 119174-36 Linux: 119171-35, 119168-42, 119175-35 Windows: 119172-35,119176-35 Sun Java System Application Server EE 8.2 SPARC: 124679-16, 124672-17, 124675-16 X86:124680-16, 124673-17, 124676-16 Linux: 124681-16,124677-16, 124674-17 Windows: 124682-16 This notification describes vulnerabilities fixed in third-party components that are included in Sun's product distribution.Information about vulnerabilities affecting Oracle Sun products can be found on Oracle Critical Patch Updates and Security Alerts page.

    Read the article

  • CVE-2012-0444 Memory corruption vulnerability in Ogg Vorbis

    - by chandan
    CVE DescriptionCVSSv2 Base ScoreComponentProduct and Resolution CVE-2012-0444 Memory corruption vulnerability 10.0 libvorbis Solaris 11 11/11 SRU 8.5 Solaris 10 SPARC: 148006-01 X86: 148007-01 This notification describes vulnerabilities fixed in third-party components that are included in Sun's product distribution.Information about vulnerabilities affecting Oracle Sun products can be found on Oracle Critical Patch Updates and Security Alerts page.

    Read the article

  • CVE-2009-2042 Information Exposure vulnerability in libpng

    - by chandan
    CVE DescriptionCVSSv2 Base ScoreComponentProduct and Resolution CVE-2009-2042 Information Exposure vulnerability 4.3 PNG reference library (libpng) Solaris 10 SPARC: 137080-04 X86: 137081-04 Solaris 9 SPARC: 139382-03 X86: 139383-03 Solaris 8 SPARC: 114816-04 X86: 114817-04 This notification describes vulnerabilities fixed in third-party components that are included in Sun's product distribution.Information about vulnerabilities affecting Oracle Sun products can be found on Oracle Critical Patch Updates and Security Alerts page.

    Read the article

  • JDeveloper 11.1.1.3 (patch set 2) is Out

    - by shay.shmeltzer
    The new version has some new features -ADF Mobile Client, Spring Extension, Maven update, Web services and more - as well as bug fixes. List of features: http://www.oracle.com/technology/products/jdev/collateral/papers/11/newfeatures/index.html Download here: http://www.oracle.com/technology/software/products/jdev/htdocs/soft11.html

    Read the article

  • Avoiding coupling

    - by Seralize
    It is also true that a system may become so coupled, where each class is dependent on other classes that depend on other classes, that it is no longer possible to make a change in one place without having a ripple effect and having to make subsequent changes in many places.[1] This is why using an interface or an abstract class can be valuable in any object-oriented software project. Quote from Wikipedia Starting from scratch I'm starting from scratch with a project that I recently finished because I found the code to be too tightly coupled and hard to refactor, even when using MVC. I will be using MVC on my new project aswell but want to try and avoid the pitfalls this time, hopefully with your help. Project summary My issue is that I really wish to keep the Controller as clean as possible, but it seems like I can't do this. The basic idea of the program is that the user picks wordlists which is sent to the game engine. It will pick random words from the lists until there are none left. Problem at hand My main problem is that the game will have 'modes', and need to check the input in different ways through a method called checkWord(), but exactly where to put this and how to abstract it properly is a challenge to me. I'm new to design patterns, so not sure whether there exist any might fit my problem. My own attempt at abstraction Here is what I've gotten so far after hours of 'refactoring' the design plans, and I know it's long, but it's the best I could do to try and give you an overview (Note: As this is the sketch, anything is subject to change, all help and advice is very welcome. Also note the marked coupling points): Wordlist class Wordlist { // Basic CRUD etc. here! // Other sample methods: public function wordlistCount($user_id) {} // Returns count of how many wordlists a user has public function getAll($user_id) {} // Returns all wordlists of a user } Word class Word { // Basic CRUD etc. here! // Other sample methods: public function wordCount($wordlist_id) {} // Returns count of words in a wordlist public function getAll($wordlist_id) {} // Returns all words from a wordlist public function getWordInfo($word_id) {} // Returns information about a word } Wordpicker class Wordpicker { // The class needs to know which words and wordlists to exclude protected $_used_words = array(); protected $_used_wordlists = array(); // Wordlists to pick words from protected $_wordlists = array(); /* Public Methods */ public function setWordlists($wordlists = array()) {} public function setUsedWords($used_words = array()) {} public function setUsedWordlists($used_wordlists = array()) {} public function getRandomWord() {} // COUPLING POINT! Will most likely need to communicate with both the Wordlist and Word classes /* Protected Methods */ protected function _checkAvailableWordlists() {} // COUPLING POINT! Might need to check if wordlists are deleted etc. protected function _checkAvailableWords() {} // COUPLING POINT! Method needs to get all words in a wordlist from the Word class } Game class Game { protected $_session_id; // The ID of a game session which gets stored in the database along with game details protected $_game_info = array(); // Game instantiation public function __construct($user_id) { if (! $this->_session_id = $this->_gameExists($user_id)) { // New game } else { // Resume game } } // This is the method I tried to make flexible by using abstract classes etc. // Does it even belong in this class at all? public function checkWord($answer, $native_word, $translation) {} // This method checks the answer against the native word / translation word, depending on game mode public function getGameInfo() {} // Returns information about a game session, or creates it if it does not exist public function deleteSession($session_id) {} // Deletes a game session from the database // Methods dealing with game session information protected function _gameExists($user_id) {} protected function _getProgress($session_id) {} protected function _updateProgress($game_info = array()) {} } The Game /* CONTROLLER */ /* "Guess the word" page */ // User input $game_type = $_POST['game_type']; // Chosen with radio buttons etc. $wordlists = $_POST['wordlists']; // Chosen with checkboxes etc. // Starts a new game or resumes one from the database $game = new Game($_SESSION['user_id']); $game_info = $game->getGameInfo(); // Instantiates a new Wordpicker $wordpicker = new Wordpicker(); $wordpicker->setWordlists((isset($game_info['wordlists'])) ? $game_info['wordlists'] : $wordlists); $wordpicker->setUsedWordlists((isset($game_info['used_wordlists'])) ? $game_info['used_wordlists'] : NULL); $wordpicker->setUsedWords((isset($game_info['used_words'])) ? $game_info['used_words'] : NULL); // Fetches an available word if (! $word_id = $wordpicker->getRandomWord()) { // No more words left - game over! $game->deleteSession($game_info['id']); redirect(); } else { // Presents word details to the user $word = new Word(); $word_info = $word->getWordInfo($word_id); } The Bit to Finish /* CONTROLLER */ /* "Check the answer" page */ // ?????????????????? ( http://pastebin.com/cc6MtLTR ) Make sure you toggle the 'Layout Width' to the right for a better view. Thanks in advance. Questions To which extent should objects be loosely coupled? If object A needs info from object B, how is it supposed to get this without losing too much cohesion? As suggested in the comments, models should hold all business logic. However, as objects should be independent, where to glue them together? Should the model contain some sort of "index" or "client" area which connects the dots? Edit: So basically what I should do for a start is to make a new model which I can more easily call with oneliners such as $model->doAction(); // Lots of code in here which uses classes! How about the method for checking words? Should it be it's own object? I'm not sure where I should put it as it's pretty much part of the 'game'. But on another hand, I could just leave out the 'abstraction and OOPness' and make it a method of the 'client model' which will be encapsulated from the controller anyway. Very unsure about this.

    Read the article

  • CVE-2011-3375 Information Disclosure vulnerability in Apache Tomcat

    - by chandan
    CVE DescriptionCVSSv2 Base ScoreComponentProduct and Resolution CVE-2011-3375 Information Exposure vulnerability 5.0 Apache Tomcat Solaris 11 11/11 SRU 04 This notification describes vulnerabilities fixed in third-party components that are included in Sun's product distribution.Information about vulnerabilities affecting Oracle Sun products can be found on Oracle Critical Patch Updates and Security Alerts page.

    Read the article

< Previous Page | 448 449 450 451 452 453 454 455 456 457 458 459  | Next Page >