Share objects

Hi All,
I suppose my question is pure Java basics, but I post it here anyway, because it's easier to explain it in the context I am working in.
Let's say, I have a Configuration bean, initialized on the startup of my Web application and stored in the application context. This bean is needed (in other words: methods are executed on it) in servlets (JSP) and in other JavaBean objects.
This means:
- When I want to use it in servlets (JSP) I can use standard technics to achieve the object
- To be able to use it in the JavaBean objects, I need to save a reference to the object in the class (or in another class referenced by the first class).
Now my question is: to limit the memory use, should I limit the number of references I store among the JavaBean objects? For example: If my original object is 100kb, all references are also 100kb? Or, are all references just "pointers" to the original allocated memory, that doesn't use much memory?
Thank you very much for your answers

You are right, it is just basic Java. The references are indeed like pointers, and they take only 16 bytes in most JVMs. So the number of references to an object is not a memory problem at all.

Similar Messages

  • Share objects between two repositories

    hello,
    How can I use the objects in a another designer/2000 repository in my repository?
    Is it possible?
    Thanks in advance.

    Hi,
    Only one instance of each servlet defined in web.xml gets created, not one per user. You're right about the sessions though, one per user is created. You're right on the other parts as well I think you could use application scope to do something like that, or the data base for that matter, depending on the use case.
    Regards,
    ~ Simon

  • How to share objects across ears ?

    We need to define a set of classes and/or jar's that will be used across various
    .ear file deployments. We can make these classes visible by putting them in BEA's
    classpath, but that would mean restarting the server everytime there are changes
    to such global classes:
    1. What is the correct way to do this ? Can classes be redefined in (i.e. defined
    in individual) various ear files ?
    2. We have value classes that are passed between various session beans that reside
    in DIFFERENT ear files (i.e. they are part of separate enterprise apps). How does
    one define and reference such value classes ?
    Thanks for your help in advance!

    DP wrote:
    Rob:
    Thanks for your response(s). This actually leads to other related questions. What
    is the recommendation for deployment in the following scenario: We have a requirement
    of being able to hot deploy objects frequently in production. I understand that
    the best way to accomplish this is to do an "exploded ear deployment".
    (a) How can we deploy one or more ejbs in an exploded ear ? Can the EJBs be either
    a set of .class files or a set of .jar files? In this context, what exactly is
    the definition of an exploded ear ? Does it mean that all objects are packaged
    only as .class files (i.e. no jar, wars whatsoever in the ear, correct ?) within
    the directory ?You can either deploy the sub-components (eg EJBs, webapps etc)
    archived, exploded or a mix.
    Personally I prefer to just explode everything like this:
    ear/META-INF/application.xml
    ear/ejb/META-INF/ejb-jar.xml
    ear/ejb/com/foo/MyEJB.class
    >
    (b) How can we deploy java objects ? Say we need to update a value class or a
    non-J2EE class on the server. If we have an exploded ear, do we simply overwrite
    the existing class file ? Will WL8.1 automatically read this newer class ? Similarly,
    if we need to add a non-j2ee .class file, can it be just dropped into the exploded
    ear directory without a server restart ?You should never need to restart the server to make an application change.
    If you want to change an arbitrary class file in the app, then you can
    just change the .class file and then use wldeploy or weblogic.Deployer
    to redeploy the application.
    You can do better if you know the class is only used in a particular web
    application. In that case, you could redeploy just a particular webapp
    without bouncing the rest of the app.
    -- Rob
    >
    Thanks, again, for helping.
    Rob Woollen <[email protected]> wrote:
    Do you have any singletons? If so, then your best bet is to have the
    classes in the CLASSPATH (at least the singletons).
    If not, then you can have a separate copy of the classes in each EAR.
    You'll need to ensure the classes that are passed between the EARs are
    exactly the same in both EARS (same serial version uid.) WLS uses
    serialization between applications, so the class will be serialized in
    app-1's classloader and deserialized in app-2's classloader.
    FWIW, we're well aware of this problem and are looking at building
    better support for this into the next major version of WLS.
    -- Rob
    DP wrote:
    We need to define a set of classes and/or jar's that will be used acrossvarious
    ear file deployments. We can make these classes visible by puttingthem in BEA's
    classpath, but that would mean restarting the server everytime thereare changes
    to such global classes:
    1. What is the correct way to do this ? Can classes be redefined in(i.e. defined
    in individual) various ear files ?
    2. We have value classes that are passed between various session beansthat reside
    in DIFFERENT ear files (i.e. they are part of separate enterprise apps).How does
    one define and reference such value classes ?
    Thanks for your help in advance!

  • How to share objects between two ADF Faces servlet sessions

    I gather the application scope is one way to go for sharing data between sessions in an ADF application. Are there other more generic methods of sharing data between servlet sessions?
    For example, let's say we have a JDev 101.3 ADFBC/JSF app. (or JDev 11g for that matter). In this app we also register a servlet in web.xml. So two people log into this application and access this defined servlet, creating two instances of that servlet...I guess. Is there a way for those two instances/sessions to talk to each other? Pass data back and forth? Should I read about JMS? Or does application scope sound better? I guess a direct communication would be more tidy, than putting data on an application bulletin board, lilke application scope.
    Any thoughts?

    Hi,
    Only one instance of each servlet defined in web.xml gets created, not one per user. You're right about the sessions though, one per user is created. You're right on the other parts as well I think you could use application scope to do something like that, or the data base for that matter, depending on the use case.
    Regards,
    ~ Simon

  • How to call a jsp file from an servlet and access the jsp file objects??

    Hi everybody
    I have an jsp file where it contains a vector object with some data and I have a servlet that needs to access this vector object . How can my servlet call for this jsp page and get the vector object. ?
    then an applet will be calling this servlet to get some other object created with the data contained within this vector object...so each time Applet ask the servlet for the object the servlet need to call for this jsp page somehow
    My main question is the communication servlet-jsp
    please if u have any clue I will appreciate it
    thanks

    Hi
    There are several ways to share objects between JSPs/Servlets.
    You can share objects by putting them in the request-in which case the objects lifetime is limited by that of the request, Another way is to store them in the session, againg the lifetime is limited by the lifetime of the session. To have objects that have to persistent over the application life-span use the servletContext to store the objects.
    Any good tutorial should help you get started. Please see the link below for a tutorial on Servlets/JSPs
    Note: Local variables in the JSP cannot be shared with other components as their scope is limited to that particular Page/Servlet.
    Link: http://java.sun.com/docs/books/tutorial/servlets/
    Good Luck!
    Eshwar Rao
    Developer Technical Support
    Sun microsystems inc
    http://www.sun.com/developers/support

  • Can I call an object with synchronized methods from an EJB

    I have a need for multiple threads (e.g. Message Driven Beans) to access a shared object, lets say a singleton, I'm aware of the "you can't have a singleton in the EJB world" issues) for read/write operations, so the operations will need to be synchronised.
    I've seen various statements such as you can't use read/write static fields in EJBs and you can't use synchronisation primitives in EJBs but I've also seen statements that say its okay to access utility classes such as Vector (which has synchronised methods) from an EJB.
    Does anyone know if there is a definitive answer on this? What are the implications of accessing a shared object with synchronised methods from multiple EJBs? Is it just that the EJB's thread may block which limits the ability of the container to manage the EJBs? In the Vector example above (from Professional Java Server Programming) did they mean its okay to use these utility classes provided they aren't shared across threads?
    If I can't use a plain old Java Object does anyone know if there are other potential solutions for sharing objects across EJBs?
    In my problem, I have an operation that I want to run in a multi-threaded way. Each thread will add information to the shared object, and this info may be used by the other threads. There's no lengthy blocking as such other than the fact that only one thread can be adding/reading information from the shared object at a time.
    I've trawled through this forum looking for similar questions of which there seem to be many, but there doesn't seem to be any definitive answers (sorry if there was and I missed it).
    Thanks
    Martin

    You can share objects among EJB's or among objects used by one or more EJB's. You can use synchronization primitives - nothing will prevent you from doing that.
    After all, the container classes, JVM-provides classes, JDBC, JCA, JNDI and other such classes do all of this with impunity. You can too. You can use file and socket I/O as well, presuming you configure the security profile to allow it. Should you? Well it depends on what you need to accomplish and if there is another practical alternative.
    Yes the specification warns you not to, but you cannot be responsible for the interior hidden implementation of classes provided to you by the JVM or third parties so you can never truly know if your are breaking these written rules.
    But when you do these things, you are taking over some part of the role of the container. For short running methods that only block while another thread is using the method or code block and no I/O or use of other potentially blocking operations are contained in the method/block, you will be fine. If you don't watch out and create deadlocks, you will harm the container and its managed thread pool.
    You should not define EJB methods as synchronized.
    Also, if you share objects between EJB's, you need to realize that the container is free to isolate pools of your EJB in separate classloaders or JVM's. It's behavior can be influenced by your packaging choices (use of .ear, multiple separate .jar's, etc.) and the configuration of the server esp. use of clustering. This will cause duplicate sets of shared classes - so singletons will not necessarily be singleton across the entire server/cluster, but no single EJB instance will see more than one of them. You design needs to be tolerant of that fact in order to work correctly.
    This isn't the definitive answer you asked for - I'll leave that to the language/spec lawyers out there. But in my experience I have run across a number of occasions where I had to go outside of the written rules and ave yet to be burned for it.
    Chuck

  • Sharing objects between different tabs on a JTabbedPane

    Does anyone know how to share objects on different tabs of a JTabbedPane? I.e., I want the same buttons/corporate logo to appear on each tab in the same location, and thus the same functionality, locations, look, etc...
    Currently, if I invoke the add(Component) method for the same component but for different panes, only the pane that had the last add() method called contains the object.
    Thanks,
    adam

    An instance of a GUI component can only be in one place in the GUI (visible or not).
    You could make your own component class (extending JPanel and containing other components you want) and then create an instance of this for each tab.

  • Sharing objects in iViews

    Hi,
    I am new in the development of iView. I want to access a JavaBean from many iViews. I tried to store it in the IPortalComponentSession with no success. I know the JSR 18 specific way....there I store it in the PortletSession. Where have to be the JavaBean stored in SAP Portal ? And with which Scope (SCOPE_UNIQUE, SCOPE_CONTEXT or SCOPE_COMPONENT).
    I programmed a test case in which 2 iView instantiate a bean and store it to the IPortalComponentSession. But each iView creates its own JavaBean, not one shared.
    Do I have to store the JavaBean in the HTTPSession ?
    Thanks
    Oliver

    Hi Oliver,
    > it was my fault...
    For sure it was
    > PortletSession with APPLICATION_SCOPE (share objects
    > between portlets) or PORTLET_SCOPE (only access from
    > the portlet which stored the object)...
    Yes, the SAP specific sessions and scopes are something which confuses everybody.
    Just to make it clear in the background:
    For each PortalComponentSession a Hashtable is stored within the HttpSession under the name "PCSESSION_<username>@<componentname>", for example: [email protected]
    It is obvious that you cannot access data for other components from this, even if they belong to the same application. There is no store between the whole HttpSession and the PortalComponentSession (this is quite bad, for the PortalComponentSession for example having the good feature to differentiate between users for security reasons, this is missing if you don't add something by hand when using HttpSession to share for example application wide data).
    Within this Hashtable, the objects are stored in the PortalComponentSession, in the following way:
    For scope UNIQUE, under the key UNIQUE:pcd:portal_content/com.btexx/com.btexx.JSPDynPageExample|pcd%3aportal_content%2fcom%2ebtexx%2fcom%2ebtexx%2eJSPDynPageExample|myKeyForScopeUnique,
    for scope CONTEXT, under the key CONTEXT:pcd:portal_content/com.btexx/com.btexx.JSPDynPageExample|myKeyForScopeContext
    for scope COMPONENT, under the key COMPONENT:myKeyForScopeComponent
    where pcd:portal_content/com.btexx/com.btexx.JSPDynPageExample is the PCD path of the concrete iView. I cannot see or explain the difference between UNIQUE and CONTEXT. For both, you can only access data which is valid for the same iView (within the PCD), when for scope COMPONENT you can share data among the same component (but called via different contexts / iView / PCD paths).
    One more remark: The scopes are not surrounding each other! If you put something into the PCS with scope CONTEXT, you cannot access this object from scope COMPONENT.
    Hope this sheds some light on this... (could be the beginning of a weblog I wanted to write since some months).
    Best regards
    Detlev

  • Singleton object in clustered enviornment

    Hi,
              In my web application which is deployed in clustered enviornment, I am facing problem for singleton object.
              I need to share object among all servers in the clustered.
              I am using weblogic server 9.2. I have tried its Singleton services, but it doesnt work as expected.
              what could be other solution to solve the problem?

    No. If you need this type of functionality, use Coherence.
              http://www.tangosol.com/coherence.jsp
              Peace,
              Cameron Purdy
              Tangosol, Inc.
              http://www.tangosol.com/coherence.jsp
              Tangosol Coherence: Clustered Replicated Cache for Weblogic
              "Ferruccio" <[email protected]> wrote in message
              news:[email protected]..
              > Hi,
              > I have a very basic question. In a WebLogic clustered
              > environment, is a Singleton replicated? In other words, if the
              > mySingleton on node A in a cluster is updated with a piece of data,
              > will this show in the mySingleton in node B?
              >
              > Thanks
              >
              > Ciao
              > Ferruccio
              

  • Shared object and different application servers - how to resolve this issue

    Dear SDN Members,
    We are occuring a big problem. We create a shared object in a program and after we call in an another one. In central system architecture, it is working well. But on a distributed architecture (4 application servers), we have a dump some times. In fact, the read of the shared object can be occured in the AS 4 but the share object has been created in AS1.
    How to manage this problem to avoid this dump ?
    Dupplicate the shared object in the application servers ?
    Encapsulate different calls with RFC link to only one AS ?
    Any parameters on server or share objects ?
    Thanks a lot for your help,
    Points will be given to right or good answers.
    Br,
    Aurélien

    What is the dump you are getting ?
    AFAIK, "Shared Memory"(SHM) is an area defined in the app server. I am not sure if you can access SHM of a different app server (as in your case trying to access SHM of AS1 from AS4). [http://help.sap.com/abapdocu_70/en/ABENSHARED_MEMORY_GLOSRY.htm]
    In this case you can opt for "DataBase Clusters". Relevant ABAP statements: [IMPORT|http://help.sap.com/abapdocu_70/en/ABAPIMPORT_MEDIUM.htm#!ABAP_ALTERNATIVE_4@4@]/[EXPORT|http://help.sap.com/abapdocu_70/en/ABAPEXPORT_DATA_CLUSTER_MEDIUM.htm#!ABAP_ALTERNATIVE_4@4@] FROM/TO DATABASE.
    Hope this helps.
    BR,
    SUhas

  • Auditing file share on windows 2008 R2

    I think I may need a little handholding here. I have been working with our new Windows 2008 R2 file server. I am having a problem doing some simple file level auditing.
    I turned on Audit Object Access in the local policy. The GPO that applies to this server does not have it set and I only really need it enabled on this server. I have it auditing success and Failure.
    After I did that I got deluged with Event ID: 5145. I went to each folder and made sure that I had auditing turned off for each folder and file. I did that to see if it would quite down the logs a little. It did not. I am currently getting about 1500 events of 5145 every second. They all say “ A network share object was checked to see whether client can be granted desired access”
    Most of the details look like this:
    - System
      - Provider
       [ Name]  Microsoft-Windows-Security-Auditing
       [ Guid]  {54849625-5478-4994-A5BA-3E3B0328C30D}
       EventID 5145
    Version 0
    Level 0
       Task 12811
       Opcode 0
       Keywords 0x8020000000000000
      - TimeCreated
      [ SystemTime]  2009-10-21T17:27:06.988998000Z
       EventRecordID 4035441
       Correlation
      - Execution
      [ ProcessID]  528
      [ ThreadID]  544
       Channel Security
       Computer XXXXX-File.XXXXX.com
       Security
    - EventData
      SubjectUserSid S-1-5-21-619530815-2141852887-1629300891-2071
      SubjectUserName SteveW
      SubjectDomainName XXXXXXXXXX
      SubjectLogonId 0x223b087c
      ObjectType File
      IpAddress 10.2.50.88
      IpPort 1087
      ShareName \\*\users
      ShareLocalPath \??\E:\shares\users
      RelativeTargetName \
      AccessMask 0x1
      AccessList %%4416 
      AccessReason %%4416: %%1801 D:(A;OICI;FA;;;WD) 
    All I am trying to keep track of at this point is logon and logoff events AND files and folders being deleted.
    If I have put this into the wrong folder please let me know.

    Hi all,
    I enabled File System Audit and NFTS audit only "Delete subfolders and files"
    auditpol /get /category:"Object Access"
    System audit policy
    Category/Subcategory                      Setting
    Object Access
      File System                             Success and Failure
      Registry                                No Auditing
      Kernel Object                           No Auditing
      SAM                                     No Auditing
      Certification Services                  No Auditing
      Application Generated                   No Auditing
      Handle Manipulation                     No Auditing
      File Share                              No Auditing
      Filtering Platform Packet Drop          No Auditing
      Filtering Platform Connection           No Auditing
      Other Object Access Events              No Auditing
      Detailed File Share                     No Auditing
    I try to delete files but don't see any 4463 event.

  • Oracle Seeded Providers Shared Objects Folder Portlet

    Hi,
    I was wondering if there was an api, or some other way of setting the folder that will be displayed in the Folder portlet in the Oracle Seeded Providers: Share Objects area.
    Thanks,
    Tom

    I was able to find the API for this. I was able to use the wwpre_api_value API. I have two issues still. The first is with setting the value for titleid though the API.
    The second is when I login as the user I'm testing, there is nothing in the folder portlet. If I click on the customize link, the folder I try to set with the API is in the pop-up window. So it seems like I'm setting almost everything correctly since it is seeing what I set in the pop-up window, but I'm missing something because it's not making it all the way to the portlet.
    Any ideas would be great.
    Thanks,
    Tom

  • Add support for swf objects

    Being able to use preexisting swf's would be a boon for Rome.  And would let flash developers be able to create new interactive objects and animations for Rome as well.

    Hello,
    There are technical limitations that apply here. You can always share  objects via the Object Exchange which can then be embedded into ROME  projects.
    Thanks for the feedback!
    Sarah
    Sarah
    Forum Moderator

  • Article: File Sharing over P2P in Flash Player 10.1 with Object Replication

    File Sharing over P2P in Flash Player 10.1 with Object Replication
    http://www.flashrealtime.com/file-share-object-replication-flash-p2p/
    + more articles on this topic coming soon...

    Hi iednolb
    Like the original poster,T, I am having very similar problems, so have been following your advice with interest, but no success.
    My details as follows :  Vista, 32bit, IE 8  My only AV is Kaspersky using their firewall not Windows,
    Flash was working fine, then some malware was discovered and  subsequently deleted since then Flash has not worked in You Tube for example.
    Like T said in his original post the exact applies regards the Shockwave Flash Object not being listed in my Internet add ons.
    My files listed under Flash differ though :
    Flash101ocx
    FlashInstall
    FlashUti101_ActiveX.dll
    FlashUti101_ActiveX      (note no .dll )   I assume the uninstaller and no install mentioned
    As I said I have tried most of the suggestions to the letter made here and on other forums but no joy.
    Appreciate any further advice, especially on the missing install entry and the add ons section.
    Thanks.

  • Software Updates ADR Issue: "Failed to download the update from the internet. Error = 5"

    "Failed to download the update from internet. Error = 5"
    The above is the error I am getting when running any ADR. The error is quite clear software updates are failing to download and Error = 5 being a permissions error its clear that the downloads are failing due to incorrect permissions applied to the download
    path. 
    Here is the last bit of my ruleengine.log, everything above is the same except for the update trying to be downloaded of course:
    Failed to download the update from internet. Error = 5
    SMS_RULE_ENGINE 6/26/2014 9:21:59 AM
    5148 (0x141C)
    Failed to download ContentID 16860969 for UpdateID 16857152. Error code = 5
    SMS_RULE_ENGINE 6/26/2014 9:21:59 AM
    5148 (0x141C)
    Downloading contents (count = 1) for UpdateID 16857255
    SMS_RULE_ENGINE 6/26/2014 9:21:59 AM
    5148 (0x141C)
    List of update content(s) which match the content rule criteria = {16861141}
    SMS_RULE_ENGINE 6/26/2014 9:21:59 AM
    5148 (0x141C)
    Downloading content with ID 16861141 in the package
    SMS_RULE_ENGINE 6/26/2014 9:21:59 AM
    5148 (0x141C)
    Failed to download the update from internet. Error = 5
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
    Failed to download ContentID 16861141 for UpdateID 16857255. Error code = 5
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
    Failed to download any update SMS_RULE_ENGINE
    6/26/2014 9:22:00 AM 5148 (0x141C)
    Failed to download update contents. SMS_RULE_ENGINE
    6/26/2014 9:22:00 AM 5148 (0x141C)
    No new update was added to the package. Package "SCP0008A" would not be updated.
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
    Failed to run the DownloadAction for the AutoDeployment.
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
    STATMSG: ID=8706 SEV=E LEV=M SOURCE="SMS Server" COMP="SMS_RULE_ENGINE" SYS=SCCM-MPS.DSCICORP.COM SITE=SCP PID=2376 TID=5148 GMTDATE=Thu Jun 26 13:22:00.164 2014 ISTR0="SMS Rule Engine" ISTR1="Failed to download one or more
    content files" ISTR2="" ISTR3="" ISTR4="" ISTR5="" ISTR6="" ISTR7="" ISTR8="" ISTR9="" NUMATTRS=0
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
    Enforcing Create Deployment Action SMS_RULE_ENGINE
    6/26/2014 9:22:00 AM 5148 (0x141C)
      Create Deployment Rule Action XML is: <DeploymentCreationActionXML xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><CollectionId>SCP00055</CollectionId><IncludeSub>true</IncludeSub><Utc>false</Utc><Duration>0</Duration><DurationUnits>Hours</DurationUnits><AvailableDeltaDuration>0</AvailableDeltaDuration><AvailableDeltaDurationUnits>Hours</AvailableDeltaDurationUnits><SuppressServers>Checked</SuppressServers><SuppressWorkstations>Unchecked</SuppressWorkstations><PersistOnWriteFilterDevices>Unchecked</PersistOnWriteFilterDevices><AllowRestart>true</AllowRestart><DisableMomAlert>false</DisableMomAlert><GenerateMomAlert>false</GenerateMomAlert><UseRemoteDP>true</UseRemoteDP><UseUnprotectedDP>true</UseUnprotectedDP><UseBranchCache>true</UseBranchCache><EnableDeployment>true</EnableDeployment><EnableWakeOnLan>true</EnableWakeOnLan><AllowDownloadOutSW>false</AllowDownloadOutSW><AllowInstallOutSW>true</AllowInstallOutSW><EnableAlert>true</EnableAlert><AlertThresholdPercentage>90</AlertThresholdPercentage><AlertDuration>7</AlertDuration><AlertDurationUnits>Days</AlertDurationUnits><EnableNAPEnforcement>false</EnableNAPEnforcement><UserNotificationOption>DisplaySoftwareCenterOnly</UserNotificationOption><LimitStateMessageVerbosity>false</LimitStateMessageVerbosity><StateMessageVerbosity>10</StateMessageVerbosity><AllowWUMU>true</AllowWUMU><AllowUseMeteredNetwork>true</AllowUseMeteredNetwork></DeploymentCreationActionXML>
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
      Rule XML is: <AutoDeploymentRule xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><DeploymentName>Test ADR</DeploymentName><DeploymentDescription>Test ADR</DeploymentDescription><LocaleId>1033</LocaleId><UseSameDeployment>false</UseSameDeployment><EnableAfterCreate>true</EnableAfterCreate><NoEULAUpdates>false</NoEULAUpdates><AlignWithSyncSchedule>false</AlignWithSyncSchedule><ScopeIDs><ScopeID>SMS00UNA</ScopeID></ScopeIDs></AutoDeploymentRule>
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
      Criteria Filter Result XML is: <AutoDeploymentRule xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><DeploymentName>Test ADR</DeploymentName><DeploymentDescription>Test
    ADR</DeploymentDescription><LocaleId>1033</LocaleId><UseSameDeployment>false</UseSameDeployment><EnableAfterCreate>true</EnableAfterCreate><NoEULAUpdates>false</NoEULAUpdates><AlignWithSyncSchedule>false</AlignWithSyncSchedule><ScopeIDs><ScopeID>SMS00UNA</ScopeID></ScopeIDs></AutoDeploymentRule>
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
        Parsing Deployment Action XML...
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
        Parsing Rule XML... SMS_RULE_ENGINE
    6/26/2014 9:22:00 AM 5148 (0x141C)
    Could not find element DeploymentId SMS_RULE_ENGINE
    6/26/2014 9:22:00 AM 5148 (0x141C)
    Could not find element UpdateGroupId SMS_RULE_ENGINE
    6/26/2014 9:22:00 AM 5148 (0x141C)
    Could not find element UpdateGroupName SMS_RULE_ENGINE
    6/26/2014 9:22:00 AM 5148 (0x141C)
        SQL is: select cis.CI_ID from vCI_ConfigurationItems cis join vProvisionedCIs pci on cis.CI_ID = pci.CI_ID where cis.CI_ID in (16793068, 16793070, 16793441, 16793445, 16793531, 16793686, 16793688, 16794597, 16794600, 16794602, 16794604, 16795443,
    16795445, 16795709, 16795711, 16796210, 16796222, 16796292, 16796298, 16799495, 16799503, 16799602, 16799700, 16799703, 16799705, 16799712, 16799718, 16800300, 16800302, 16800367, 16800369, 16800371, 16800375, 16801224, 16801227, 16801237, 16801239, 16801287,
    16801289, 16801559, 16801566, 16801996, 16802034, 16802839, 16802841, 16803306, 16803310, 16803420, 16803422, 16806477, 16806479, 16809354, 16809360, 16809393, 16809397, 16809774, 16809786, 16809792, 16813338, 16813348, 16813636, 16813638, 16814948, 16814950,
    16815151, 16815153, 16817088, 16817102, 16817108, 16817398, 16817400, 16818677, 16818691, 16825397, 16840448, 16840458, 16840460, 16840462, 16840690, 16840700, 16840702, 16840710, 16840824, 16840826, 16842640, 16842641, 16842802, 16842803, 16842841, 16842870,
    16842871, 16842896, 16842917, 16843017, 16843042, 16843049, 16843051, 16845981, 16846404, 16846751, 16846757, 16848017, 16848021, 16848664, 16848687, 16849383, 16849385, 16852506, 16852514, 16852516, 16855484, 16857102, 16857151, 16857152, 16857255) order
    by cis.CI_ID SMS_RULE_ENGINE
    6/26/2014 9:22:00 AM 5148 (0x141C)
          0 of 115 updates are downloaded and will be added to the Deployment.
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
    The rule resulted in no updates being found. Skip deployment creation or update...
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
    CRuleHandler: Enforcing Actions for Rule 16777228 failed!
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
    CRuleHandler: ResetRulesAndCleanUp() SMS_RULE_ENGINE
    6/26/2014 9:22:00 AM 5148 (0x141C)
    Updated Failure Information for Rule: 16777228
    SMS_RULE_ENGINE 6/26/2014 9:22:00 AM
    5148 (0x141C)
    CRuleHandler: Deleting Rule 16777228 SMS_RULE_ENGINE
    6/26/2014 9:22:00 AM 5148 (0x141C)
    Found notification file C:\Program Files\Microsoft Configuration Manager\inboxes\RuleEngine.box\16777228.RUL
    SMS_RULE_ENGINE 6/26/2014 9:22:10 AM
    5148 (0x141C)
    RuleSchedulerThred: Change in Rules Object Signalled.
    SMS_RULE_ENGINE 6/26/2014 9:22:10 AM
    5228 (0x146C)
    Refreshed ScheduleList instance for Rule (16777228) from schedule string () with next occurence (12/31/1969 7:00:00 PM)
    SMS_RULE_ENGINE 6/26/2014 9:22:10 AM
    5228 (0x146C)
    FindNextEventTime found next event for RuleID 0 as :1/1/2038 12:00:00 AM
    SMS_RULE_ENGINE 6/26/2014 9:22:10 AM
    5228 (0x146C)
    RuleEngine: Got next rule execution time successfully. Next event is in  12369097 minutes
    SMS_RULE_ENGINE 6/26/2014 9:22:10 AM
    5228 (0x146C)
    Sleeping for 15 minutes SMS_RULE_ENGINE
    6/26/2014 9:22:10 AM 5228 (0x146C)
    Also, I do not have a patchdownloader.log anywhere, Ive checked all aforementioned locations from various sources and it just simply does not exist on my SCCM server. Here is my setup:
    Server1: Primary server with all roles installed locally except the site database is on its own server. WSUS is installed locally here and DB is stored here. 
    Server2: SQL DB for Primary site DB
    Server3: Secondary remote site running MP, DP, SUP. DB is SQL Express local. 
    So the SUP role was installed successfully on both server1 first and server 2 second with the site servers accounts. The SUP Synchronizes successfully and I can see a large list of updates available for use but not downloaded of course. I have set WSUS option
    to store updates locally and have plenty of space at the target destination.
    So here is my issue, I have been working on this issue for the better part of a week and understand the error code from the ruleengine.log to be a permissions issue. I have also proved this out but creating a test ADR with minimal updates and applied NTFS perms
    to the target path for Modify with the everyone group (testing purposes only). The updates downloaded successfully. So this puts me right back to where I was, knowing its a permissions issue but not understanding what permissions are needed. Let me explain
    further.
    The best way to start is to show what perms I have to the target location for downloads/wsus/sup anything:
    Path: \\Server1\UpdatesAndDefinitions    (permissions being applied to the UpdatesAndDefinitions root folder)
    SCCMAdmin (account used for most SCCM tasks except for NA) / Modify / Share and NTFS
    Server1$ (primary site server) / Modify / NTFS
    Everyone / read and execute / NTFS and Share
    There are other system generated perms but the above three are the important ones. So hence my confusion I know that the SCCMAdmin account or the Server its self has to be accessing the target directory so why is it failing with a permissions issue?
    My next step was to enable Auditing on the target path. Doing so revealed just what I thought and through me into further frustration:
    A network share object was accessed.
    Subject:
    Security ID:
    SYSTEM
    Account Name:
    SCCM-MPS$
    Account Domain:
    DSCI
    Logon ID:
    0x3e7
    Network Information:
    Source Address:
    fe80::306a:8827:8672:3ba5
    Source Port:
    50329
    Share Name: \\*\UpdatesAndDefinitions
    A handle to an object was requested.
    Subject:
    Security ID:
    DSCI\sccmadmin
    Account Name:
    sccmadmin
    Account Domain:
    DSCI
    Logon ID:
    0xad903c
    Object:
    Object Server:
    Security
    Object Type:
    File
    Object Name:
    F:\UpdatesAndDefinitions
    Handle ID:
    0xf5c
    Process Information:
    Process ID:
    0x10cc
    Process Name:
    C:\Windows\explorer.exe
    Access Request Information:
    Transaction ID:
    {00000000-0000-0000-0000-000000000000}
    Accesses:
    READ_CONTROL
    ReadAttributes
    Access Mask:
    0x20080
    Privileges Used for Access Check:
    Restricted SID Count:
    0
    Now I may not be the best I traversing through the mess of audit entry's and translating them, but from what I can see the two accounts that have the proper share and ntsf perms ive listed above are indeed the ones accessing the target location and the audit
    code is success. I filter for failures and found no audits for failures whatsoever yet my downloads still fail religiously, unless of course I open myself up with the everyone group.
    So next... I tried adding in the Network Service account with proper permissions, the Local Service Account, my user account, and all no go's.
    Next... I remove the SUP roles from SCCM checked the logs for deinstall confirmations, and reinstalled these roles. No Go!
    If anyone can assist I would be in your debt and very grateful. 
    Oh last note, but very important note I'm running SCCM 2012 SP1 CU4
    Thanks,
    Michael
    MichaelSpaulding

    I just tested with the everyone group further; I added everyone with modify for ntfs and just read only for share and downloads failed!
    I then changed the share perms for everyone to change and the ntfs to read/execute and poof downloads complete! Obviously change share perms for everyone leaves me open which Id like to prevent, so finding what account is being used is crucial.
    I have already tried adding all of the SCCM accounts I use and the servers themselves as change perms to share and ntfs and have not had any luck.
    MichaelSpaulding

Maybe you are looking for