Custom "serializer" in ReplicatedCache not set on CacheHandler

I tried to configure custom Serializer on ReplicatedCache service (supposed to be new feature in Coherence 3.4) in tangosol-coherence-override.xml like this:
<coherence>
<cluster-config>
<services>
<service id="1">
<service-type>ReplicatedCache</service-type>
<service-component>ReplicatedCache</service-component>
<init-params>
<init-param id="5">
<param-name>serializer/class-name</param-name>
<param-value>com.marand.cache.io.ThinTypeMapSerializer</param-value>
</init-param>
</init-params>
</service>
</services>
</cluster-config>
</coherence>
... and it is actually being picked up and used, but as soon as starting 2nd node in a cluster, when it should synchronize the replicated caches, I get an Exception:
java.lang.ClassCastException: com.marand.cache.io.ThinTypeMapSerializer cannot be cast to com.tangosol.io.DefaultSerializer
     at com.tangosol.util.ExternalizableHelper.deserializeInternal(ExternalizableHelper.java:2643)
     at com.tangosol.util.ExternalizableHelper.fromBinary(ExternalizableHelper.java:256)
     at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.ReplicatedCache$ConverterFromInternal.convert(ReplicatedCache.CDB:6)
     at com.tangosol.util.ConverterCollections$ConverterMapEvent.getNewValue(ConverterCollections.java:3594)
     at com.tangosol.coherence.component.util.cacheHandler.CatalogHandler.entryInserted(CatalogHandler.CDB:3)
     at com.tangosol.util.MapEvent.dispatch(MapEvent.java:191)
     at com.tangosol.util.MapEvent.dispatch(MapEvent.java:164)
     at com.tangosol.util.MapListenerSupport.fireEvent(MapListenerSupport.java:556)
     at com.tangosol.coherence.component.util.CacheHandler.onLeaseUpdate(CacheHandler.CDB:83)
     at com.tangosol.coherence.component.util.CacheHandler.populateCache(CacheHandler.CDB:33)
     at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.ReplicatedCache$CacheUpdate.onReceived(ReplicatedCache.CDB:5)
     at com.tangosol.coherence.component.util.daemon.queueProcessor.service.Grid.onMessage(Grid.CDB:9)
     at com.tangosol.coherence.component.util.daemon.queueProcessor.service.Grid.onNotify(Grid.CDB:130)
     at com.tangosol.coherence.component.util.daemon.queueProcessor.service.grid.ReplicatedCache.onNotify(ReplicatedCache.CDB:3)
     at com.tangosol.coherence.component.util.Daemon.run(Daemon.CDB:37)
     at java.lang.Thread.run(Thread.java:619)
...Investigating further I found that the deserialization works correctly - the ReplicatedCache$ConverterFromInternal is actually using the custom Serializer when
trying to deserialize the ReplicatedCache$CacheUpdate message. But the sending node constructs the ReplicatedCache$CacheUpdate message and populates it using the CacheHandler.populateUpdateMessage method which in turn uses the CacheHandler's serializer and that is not being set in the process of initialization - see the following methods:
ReplicatedCache.instantiateCacheHandler & ReplicatedCache.cloneCacheHandler
Am I correct that this is a bug?
Peter

Unfortunately DefaultSerializer is final ;-(
...I think that CatalogHandler (a subclass of CacheHandler) which is also being used as the 1st handler in ReplicatedCache is the right suspect. This is definitely always using DefaultSerializer.

Similar Messages

  • GPM Custom GPO-Settings: An error occurred while generating report: Object reference not set to an instance of an object.

    Hello,
    As you can tell from the title of this question, I am no expert with GPO's.  Before I begin, I spent a few minutes to an hour searching and reading in hopes of finding the solution and avoid putting myself out there as a "GPO Newb".  While
    I found several posts and answers that were similar and were related, the questions and answers were more advanced and did present the solutions providing the person had initial knowledge already.  That is not necessarily my case and I would ask for a
    little patience and a bit of 'hand-holding' for what I need.
    I run SBS 2011, and in Group Policy Management I have a custom GPO.  In this GPO I define all my settings.  I understand this may not be the best or most practical method of applying policies, but I am not very strict and have few settings.  This
    policy existed prior to my joining the company, and was migrated in to this SBS '11 from SBS '03.  That may be the issue, but before making any changes I am seeking expert advice.
    When I select that GPO, named "Main GPO", and click on the tab at the top "Settings" I see the error: "An error occurred while generating report: Object reference not set to an instance of an object."
    I saw that when I right click the GPO > View > Options and select the tab "Reporting" that it states that for reporting to work the location of the .adm files must be specified.  I see that my option for the location is set to "Default"
    which by my guessing would be located in the C:\Windows\sysvol directory.  Below is what I see there:
    C:\Windows\sysvol\domain
    C:\Windows\sysvol\staging
    C:\Windows\sysvol\staging areas
    C:\Windows\sysvol\sysvol
    I think the problem is that my custom GPO are not inside the default location, which I speculate is: C:\Windows\sysvol\domain\policies (which I do see some objects there).
    But instead I also see items in this folder: C:\Windows\sysvol\sysvol\JOHN.LOCAL\policies (while where I just typed 'JOHN.LOCAL' is my actual local domain).
    To further this, when I edit that custom GPO, then at the very top of the tree I right click on it and select Properties, I see a Unique Name listed there as a long string of numbers and letters, similar to a registry entry.  I searched my server for
    that same Unique Name and found it listed inside the folder: C:\Windows\sysvol\domain\policies
    If I am correct with my assumption and basic knowledge, I should move all objects as follows:
    -Move FROM: C:\Windows\sysvol\domain\policies
    -Move TO: C:\Windows\sysvol\sysvol\JOHN.LOCAL\policies
    My concerns are that I am not correct at all, that I will break something, that there may be an easier fix than moving anything, or that I am overlooking something causing this error altogether. 
    Thank you for anyone's help and time with assisting me with this request.
    John Fester

    > top "Settings" I see the error: "An error occurred while generating
    > report: Object reference not set to an instance of an object."
    That's due to a security setting (most possibly) your current OS does
    not understand. Hard to find out wich exact setting it is... To resolve
    this issue, we need the gtpptmpl.inf file residing in the policiy's
    sysvol folder. To open this folder, edit the policy, move to computer
    settings - policies - windows settings - scripts - startup, press "show
    files". Then move two folders upwards and back down to
    .\microsoft\windows nt\secedit. There you'll see the gpttmpl.inf - post
    its contents and we'll have a look at it.
    > location, which I speculate is: C:\Windows\sysvol\domain\policies (which
    > folder: C:\Windows\sysvol\sysvol\JOHN.LOCAL\policies (while where I just
    That's perfectly ok - JOHN.LOCAL in fact is a symlink pointing to "domain".
    > all objects as follows:
    > -Move FROM: C:\Windows\sysvol\domain\policies
    > -Move TO: C:\Windows\sysvol\sysvol\JOHN.LOCAL\policies
    No.
    Martin
    Mal ein
    GUTES Buch über GPOs lesen?
    NO THEY ARE NOT EVIL, if you know what you are doing:
    Good or bad GPOs?
    And if IT bothers me - coke bottle design refreshment :))

  • Default customer type not set by default

    hello,
    we are having and issue with the "customer type" not being set by default.
    When a new customer is created (when they make a purchase) I would like them to be set as “Retail Customer” as their customer type .
    I have set the default customer type to be “retail customer” however this is not applied to the customer.
    has anyone else struck this problem?  is there a fix for this?
    thanks in advance for the help.

    This is as expected/normal behaviour.
    If you create a column in a list that already has items it will not automatically set that column to the default option. Instead any pre-existing items will have a blank value until/unless the item is next edited. At that point you can chose a value but
    it still will not populate with the default value.
    That is deliberate as it may be entirely valid to have blank entries and so overwriting those would be much worse than leaving entries blank.

  • Remote distributed scheme with custom serializer does not work

    HI,
    I have a remote scheme invoked through TcpExtend which is distributed-scheme. Now if I have a custom serializer attached the first node in the cluster comes up without a problem but not the second one onwards. It gives the following exception...
    2010-11-01 18:17:27.302/21.532 Oracle Coherence EE 3.6.0.1 <Error> (thread=Distr
    ibutedCache:extend-service, member=2): The service "extend-service" is configure
    d to use serializer <our package>.JavaSerialisation@562
    78964, which appears to be different from the serializer used by Member(Id=1, Ti
    mestamp=2010-11-01 18:14:35.066, Address=192.168.113.56:8088, MachineId=6456, Lo
    cation=site:oursite.corp,machine:mg-ldn-d0002,process:540, Role=Exe4jRuntimeWi
    nLauncher).
    java.io.IOException: invalid type: 119
    at com.tangosol.coherence.component.util.daemon.queueProcessor.service.g
    rid.PartitionedService$PartitionConfig.readObject(PartitionedService.CDB:25)
    at com.tangosol.coherence.component.util.daemon.queueProcessor.service.g
    rid.PartitionedService$MemberWelcome.read(PartitionedService.CDB:20)
    at com.tangosol.coherence.component.util.daemon.queueProcessor.service.G
    rid.deserializeMessage(Grid.CDB:42)
    at com.tangosol.coherence.component.util.daemon.queueProcessor.service.G
    rid.onNotify(Grid.CDB:31)
    at com.tangosol.coherence.component.util.daemon.queueProcessor.service.g
    rid.PartitionedService.onNotify(PartitionedService.CDB:3)
    at com.tangosol.coherence.component.util.daemon.queueProcessor.service.g
    rid.partitionedService.PartitionedCache.onNotify(PartitionedCache.CDB:3)
    at com.tangosol.coherence.component.util.Daemon.run(Daemon.CDB:42)
    at java.lang.Thread.run(Thread.java:619)
    Stopping the extend-service service.
    at com.tangosol.coherence.component.util.daemon.queueProcessor.service.G
    rid.start(Grid.CDB:6)2010-11-01 18:17:27.302/21.532 Oracle Coherence EE 3.6.0.1
    <D5> (thread=DistributedCache:extend-service, member=2): Service extend-service
    left the cluster

    Config file contents follow...
    The server config - <cache-config>
    <caching-scheme-mapping>
    <cache-mapping>
    <cache-name>client-request-cache</cache-name>
    <scheme-name>extend-scheme</scheme-name>
    </cache-mapping>
    </caching-scheme-mapping>
    <caching-schemes>
    <proxy-scheme>
    <service-name>ExtendTcpProxyService</service-name>
    <acceptor-config>
    <tcp-acceptor>
    <local-address>
              <address>localhost</address>
              <port>9098</port>
    </local-address>
    </tcp-acceptor>
    <serializer>
    <class-name>test.JavaSerialisation</class-name>
    </serializer>
    </acceptor-config>
    </proxy-scheme>
    <distributed-scheme>
    <scheme-name>extend-scheme</scheme-name>
    <service-name>extend-service</service-name>
    <serializer>
    <class-name>test.JavaSerialisation</class-name>
    </serializer>
    <backing-map-scheme>
    <local-scheme/>
    </backing-map-scheme>
    <autostart>false</autostart>
    </distributed-scheme>
    </caching-schemes>
    </cache-config>
    Client - config is as follows
    <cache-config>
    <caching-scheme-mapping>
    <cache-mapping>
    <cache-name>client-request-cache</cache-name>
    <scheme-name>client-extend-scheme</scheme-name>
    </cache-mapping>
    </caching-scheme-mapping>
    <caching-schemes>
    <remote-cache-scheme>
    <scheme-name>client-extend-scheme</scheme-name>
    <service-name>ExtendTcpCacheService</service-name>
    <initiator-config>
    <tcp-initiator>
    <remote-addresses>
    <socket-address>
                   <address>localhost</address>
                   <port>9099</port>
              </socket-address>
    </remote-addresses>
                   <connect-timeout>5s</connect-timeout>
    </tcp-initiator>
    <outgoing-message-handler>
    <!-- If server has not responded by 100s, then will time out -->
    <request-timeout>100s</request-timeout>
    </outgoing-message-handler>
    <serializer>
    <instance>
    <class-name>test.JavaSerialisation</class-name>
    </instance>
    </serializer>
    </initiator-config>
    </remote-cache-scheme>
    </caching-schemes>
    </cache-config>
    Edited by: 807718 on 08-Nov-2010 10:14
    Edited by: 807718 on 08-Nov-2010 10:15

  • "Object reference not set to an instance of an object" when opening designer

    I have a Windows Forms project which was originally developed in Visual Studio 2010. I migrated the project to VS2013, and now every time I open the project's main form, the designer complains of a null reference. If I hit "Ignore and Continue",
    the code compiles just fine. The error in question appears in the "Windows Form Designer generated code" region. Even more curious, the line in question is not the first reference to the object. It's as if the first few times it needs to interact
    with the object, it's fine, then at a certain point it becomes null.
    Here is the call stack for the error:
    at System.ComponentModel.ReflectPropertyDescriptor.SetValue(Object component,
    Object value)at
    Microsoft.VisualStudio.Shell.Design.VsTargetFrameworkPropertyDescriptor.SetValue(Object
    component, Object value)at
    System.ComponentModel.Design.Serialization.CodeDomSerializerBase.DeserializePropertyAssignStatement(IDesignerSerializationManager
    manager, CodeAssignStatement statement, CodePropertyReferenceExpression
    propertyReferenceEx, Boolean reportError)at
    System.ComponentModel.Design.Serialization.CodeDomSerializerBase.DeserializeAssignStatement(IDesignerSerializationManager
    manager, CodeAssignStatement statement)at
    System.ComponentModel.Design.Serialization.CodeDomSerializerBase.DeserializeStatement(IDesignerSerializationManager
    manager, CodeStatement statement) 
    And here is the code in question:
    this.optionsControl.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); 
    this.optionsControl.IsAsciiMode = false;           
    this.optionsControl.Location = new System.Drawing.Point(3, 3);
    this.optionsControl.LogControl = null;           
    this.optionsControl.Name = "optionsControl";           
    this.optionsControl.PlugInManager = null;           
    this.optionsControl.PortFacade = null;           
    this.optionsControl.Size = new System.Drawing.Size(613, 259);
    this.optionsControl.TabIndex = 0;
    The problem is reported at the third line, "this.optionsControl.Location = new System.Drawing.Point(3, 3);".

    Hi Eric,
    I have made a research about your issue, and I found it might be caused by the usercontrol in the project. Was “this.optionsControl” a UserControl? It seems that this issue was difficult to handle.
    If possible, I would recommend you recreate this control in a new project.
    In addition, I think you could turn to the links below, they may be useful to you:
    # How to get more information about exceptions thrown by the designer when switching from code to design view?
    http://community.sharpdevelop.net/forums/p/16124/43105.aspx
    # How to avoid WSODs in the Visual Studio 2005 Designer
    http://www.codeproject.com/Articles/13584/How-to-avoid-WSODs-in-the-Visual-Studio-Desig
    # design time error: object reference not set an instance of an object but runs fine
    https://social.msdn.microsoft.com/Forums/vstudio/en-US/b3676bef-e457-4aac-b438-d3ed8a667e3f/design-time-error-object-reference-not-set-an-instance-of-an-object-but-runs-fine?forum=winforms
    Best Regards,
    Edward
    This response contains a reference to a third party World Wide Web site. Microsoft is providing this information as a convenience to you. Microsoft does not control these sites and has not tested any software or information found on these sites; therefore,
    Microsoft cannot make any representations regarding the quality, safety, or suitability of any software or information found there. There are inherent dangers in the use of any software found on the Internet, and Microsoft cautions you to make sure that you
    completely understand the risk before retrieving any software from the Internet.
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

  • Object reference not set to an instance of an object in treeView

    Hello
    I wrote this code. I have this Error "Object reference not set to an instance of an object" on  " MessageBox.Show(tn.Text);"
    in " MaintreeView_BeforeSelect ".
    #region Remove BackColor of all treeview nodes
    private void ClearBackColor()
    TreeNodeCollection nodes = MaintreeView.Nodes;
    foreach (TreeNode tn in nodes)
    ClearRecursive(tn);
    private void ClearRecursive(TreeNode treeNode)
    foreach (TreeNode tn in treeNode.Nodes)
    tn.BackColor = Color.Empty;
    if(tn.IsSelected == true)
    tn.TreeView.SelectedNode = null;
    ClearRecursive(tn);
    #endregion
    private void MaintreeView_BeforeSelect(object sender, TreeViewCancelEventArgs e)
    ClearBackColor();
    TreeNode tn = MaintreeView.SelectedNode;
    if (tn != null)
    MessageBox.Show(tn.Text);
    if (tn.Level == 7)

    Hi ARZARE,
    I tested your code, it can show the tn.Text when in the rootnode.
    I suggest you putting the ClearBackColor() at the last of the BeforeSelect Event. Or this method will clear the selectNode.
    private void treeView1_BeforeSelect(object sender, TreeViewCancelEventArgs e)
    //ClearBackColor();
    TreeNode tn = this.treeView1.SelectedNode;
    if (tn != null)
    MessageBox.Show(tn.Text);
    ClearBackColor();
    If you have any other concern regarding this issue, please feel free to let me know.
    Best regards,
    Youjun Tang
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • Object Reference Not Set To An Instance Of An Object - Outlook Add-In - Add-In Express

    Hi,
    My Add-In has been developed in VS2010 using the Add-In Express pack.
    Its a very simple add-in that shows an IT support ticket email detailing PC information. To use it, following installing the add-in, the user must select the tab in outlook and click on the Send IT Support Email button which will generate an Outlook Email
    Template with specific information about the PC that I pull using VB.
    It works fine in Windows 7 & 8, but throws an 'Object Reference Not Set To An Instance Of An Object' exception in Windows XP. Screenshot is shown below:
    The code is below
    Imports System.Runtime.InteropServices
    Imports System.ComponentModel
    Imports System.Drawing
    Imports System.Windows.Forms
    Imports AddinExpress.MSO
    Imports System.Object
    Imports System.Net
    Imports System.Environment
    Imports System.Net.NetworkInformation
    Imports System.Windows.Forms.Application
    Imports Microsoft.Office.Interop.Outlook
    Imports outlook = Microsoft.Office.Interop.Outlook
    'Add-in Express Add-in Module
    <GuidAttribute("735B7BC8-DD2F-44D8-BC37-30D86769C065"), ProgIdAttribute("$safeprojectname$.AddinModule")> _
    Public Class AddinModule
    Inherits AddinExpress.MSO.ADXAddinModule
    #Region " Add-in Express automatic code "
    'Required by Add-in Express - do not modify
    'the methods within this region
    Public Overrides Function GetContainer() As System.ComponentModel.IContainer
    If components Is Nothing Then
    components = New System.ComponentModel.Container
    End If
    GetContainer = components
    End Function
    <ComRegisterFunctionAttribute()> _
    Public Shared Sub AddinRegister(ByVal t As Type)
    AddinExpress.MSO.ADXAddinModule.ADXRegister(t)
    End Sub
    <ComUnregisterFunctionAttribute()> _
    Public Shared Sub AddinUnregister(ByVal t As Type)
    AddinExpress.MSO.ADXAddinModule.ADXUnregister(t)
    End Sub
    Public Overrides Sub UninstallControls()
    MyBase.UninstallControls()
    End Sub
    #End Region
    Public Shared Shadows ReadOnly Property CurrentInstance() As AddinModule
    Get
    Return CType(AddinExpress.MSO.ADXAddinModule.CurrentInstance, AddinModule)
    End Get
    End Property
    Private Sub AddInModule_AddInInitiatize(ByVal sender As Object, ByVal e As EventArgs) _
    Handles MyBase.AddinInitialize
    'Outlook 2010 = 14
    If Me.HostMajorVersion >= 14 Then
    AdxOlExplorerCommandBar1.UseForRibbon = False
    End If
    End Sub
    Public ReadOnly Property OutlookApp() As Outlook._Application
    Get
    Return CType(HostApplication, Outlook._Application)
    End Get
    End Property
    'Gets the MAC Address from the NIC Information
    Function getMacAddress()
    Dim nics() As NetworkInterface = _
    NetworkInterface.GetAllNetworkInterfaces
    Return nics(0).GetPhysicalAddress.ToString
    End Function
    Sub CreateTemplate()
    Dim sHostName As String
    Dim sDomain As String
    Dim sUserName As String
    Dim sOS As String
    Dim s64 As String
    Dim sMAC As String
    Dim host As String = System.Net.Dns.GetHostName()
    Dim LocalHostaddress As String = System.Net.Dns.GetHostEntry(host).AddressList(1).ToString()
    Dim MyItem As Outlook.MailItem
    'Finds the PC Number
    sHostName = Environ$("computername")
    'Finds the Domain
    sDomain = Environ$("userdomain")
    'Finds the Username logged into the PC
    sUserName = (Environment.UserDomainName & "\" & Environment.UserName)
    'Finds the Operating System
    sOS = (My.Computer.Info.OSFullName)
    'Shows the results collected from the getMacAddress Function in the sMac variable
    sMAC = getMacAddress()
    'Finds the Architecture of the Operating System - x86 or x64
    If (Environment.Is64BitOperatingSystem) Then
    s64 = ("64bit")
    Else
    s64 = ("32bit")
    End If
    'Creates a Template Email
    MyItem = OutlookApp.CreateItem(Outlook.OlItemType.olMailItem)
    'Configures the Sender as [email protected]
    MyItem.To = "[email protected]"
    'Shows the template
    MyItem.Display()
    'Shows all of the string in the Email Body
    MyItem.HTMLBody = String.Concat("<b><u>IT SUPPORT TICKET</u></b>", "<br/><br/>", "<tr><b>PC Number: </b></tr>", sDomain, "\", sHostName, "<b></b>", "<br/><br/>", "<b>Username: </b>", sUserName, "<b></b>", "<br/><br/>", "<b>OS Version: </b>", sOS, s64, "<b></b>", "<br/><br/>", "<b>IP Address: </b>", LocalHostaddress, "<b></b>", "<br/><br/>", "<b>MAC Address: </b>", sMAC, "<b></b>", "<br/><br/>", "<b>Comment:</b>", "<br/>", "<i>Please give a brief description of your problem attaching a screen shot if possible</i>", "<br/><br/>") & MyItem.HTMLBody
    End Sub
    Private Sub AdxRibbonButton1_OnClick(ByVal sender As Object, ByVal control As IRibbonControl, ByVal pressed As Boolean) Handles AdxRibbonButton1.OnClick
    'Runs CreateTemplate
    CreateTemplate()
    End Sub
    Private Sub AdxCommandBarButton1_Click(ByVal sender As Object) Handles AdxCommandBarButton1.Click
    'Runs CreateTemplate
    CreateTemplate()
    End Sub
    End Class
    I would appreciate any help with this whatsoever as I am pulling my hair out!!
    Many Thanks!!
    Chris

    Hi,
    Welcome to MSDN forum.
    I am afraid that the issue is out of support range of VS General Question forum which mainly discusses
    the usage of Visual Studio IDE such as WPF & SL designer, Visual Studio Guidance Automation Toolkit, Developer Documentation and Help System
    and Visual Studio Editor.
    Because your Add-in is developed using Add-in Express which is third-party, I suggest consulting Add-in Express forum:
    http://www.add-in-express.com/forum/index.php for better support.
    Best regards,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

  • "Object reference not set to an instance of an object" when using Sheel Shah's example

    I am attempting to use a custom add dialog as in http://blogs.msdn.com/b/lightswitch/archive/2011/07/07/creating-a-custom-add-or-edit-dialog.aspx and
    I get the error "Object reference not set to an instance of an object." when clicking my button to AddEntity().  My code to call the control is:
    User u = new User();
    userdialoghelper.AddEntity(u);
    Any ideas as to why I'm getting this error?  I "think" that I've set up the class properly?
    Scott

    I may be a couple of years late to the party here (using VS2013) but I also had some issues adapting to Yann's improvements over Sheel's code.
    Sheel's screen code as provided has the word "Old in the InitializeDataWorkspace and the created methods. this does not work when copy/pasted. ALso removed the "UI" from "InitialiseUI()"
    Following code can be used with Yann's Helper Class.
    Namespace LightSwitchApplication
    Public Class EditableCustomersGrid
    Private customersDialogHelper As ModalWindow
    Private Sub EditableCustomersGrid_InitializeDataWorkspace(saveChangesTo As System.Collections.Generic.List(Of Microsoft.LightSwitch.IDataService))
    customersDialogHelper = New ModalWindow(Me.Customers, "CustomerViewDialog")
    End Sub
    Private Sub EditableCustomersGrid_Created()
    customersDialogHelper.Initialise()
    End Sub
    Private Sub gridAddAndEditNew_CanExecute(ByRef result As Boolean)
    customersDialogHelper.CanAdd()
    End Sub
    Private Sub gridAddAndEditNew_Execute()
    customersDialogHelper.AddEntity()
    End Sub
    Private Sub gridEditSelected_CanExecute(ByRef result As Boolean)
    customersDialogHelper.CanView()
    End Sub
    Private Sub gridEditSelected_Execute()
    customersDialogHelper.ViewEntity()
    End Sub
    Private Sub EditDialogOk_Execute()
    customersDialogHelper.DialogOk()
    End Sub
    Private Sub EditDialogCancel_Execute()
    customersDialogHelper.DialogCancel()
    End Sub
    End Class
    End Namespace

  • "Object reference not set to an instance of an object" error in SAPBO 9.0 PL08

    Hi Experts,
    I developed Customized Addon and  created.ard file using B1 DE 2.2 version. But when we installed in the client place,Addon is connecting and status is showing "Connected" at the same time we are getting an error "Object reference not set to an instance of an object" . Please find the enclosed screen shot for your reference.
    In the debug mode, am not getting any error and addon is working perfectly.
    I need clarification --->PL08 SDK is required to create .ard file (OR)  PL05 SDK is sufficient ??
    Before this am getting error "You are not connected to the company" while connecting addon,that is resolved.
    Now am  facing this problem, Please help me  out to resolve this issue.
    Thanks & Regards
    KMJ

    Hi Maik Delly,
    I created the addons for SAPB1 8.81/8.82 SQL Server 2008 R2 environment  from the same source code which is working fine till now without any error.
    But why all of sudden we are getting this error for SAP B1 9.0 PL08 and SQL Server 2012 R2 environment.
    In my system i have .net framework 3.5 SP1  and .Net Compact framework 1.0 and 2.0 installed. Addon is connecting and working also without any error for the same environment.
    Some Clarification needed
    1)  SAP B1 9 PL05 SDK sufficient to create .ard file for SAP B1 9 PL08 environment ?
    Awaiting for suggestions and advices to resolve this issue.
    Thanks & Regards
    KMJ

  • Error occurred in deployment step 'Activate Features': Object reference not set to an instance of an object.

    I am trying to create a custom timer job and while deploying it getting the error as:
    Error occurred in deployment step 'Activate Features': Object reference not set to an instance of an object.
    where am i going wrong?please suggest...
    Thanks
    Suu30

    I am not able to get the errors.So attaching the error log files here.Please help
    08/21/2012 17:35:03  1  INF  Entering function PsconfigUserInterfaceMain.Main
    08/21/2012 17:35:03  1  INF    Entering function Common.SetCurrentThreadCultureToInstalledCulture
    08/21/2012 17:35:03  1  INF      Entering function Common.SetThreadCultureToInstalledCulture
    08/21/2012 17:35:03  1  INF        Current thread culture is English (United States), current thread ui culture is English (United States), installed culture is English (United States)
    08/21/2012 17:35:03  1  INF      Leaving function Common.SetThreadCultureToInstalledCulture
    08/21/2012 17:35:03  1  INF      The current ui culture English (United States) is NOT right to left
    08/21/2012 17:35:03  1  INF    Leaving function Common.SetCurrentThreadCultureToInstalledCulture
    08/21/2012 17:35:03  1  INF    Creating the psconfig application context
    08/21/2012 17:35:03  1  INF    Entering function PsconfigApplicationContext.PsconfigApplicationContext
    08/21/2012 17:35:03  1  INF      Entering function UserInterface.UserInterface
    08/21/2012 17:35:03  1  INF      Leaving function UserInterface.UserInterface
    08/21/2012 17:35:03  1  INF      Entering function TaskDriver.TaskDriver
    08/21/2012 17:35:03  1  INF        Entering function TaskDriver.BuildCommandCollection
    08/21/2012 17:35:03  1  INF          Entering function CommandCollectionBase.CommandCollectionBase
    08/21/2012 17:35:03  1  INF          Leaving function CommandCollectionBase.CommandCollectionBase
    08/21/2012 17:35:03  1  INF          Entering function CommandCollection.CommandCollection
    08/21/2012 17:35:03  1  INF          Leaving function CommandCollection.CommandCollection
    08/21/2012 17:35:03  1  INF          Entering function CommandCollectionBase.CommandCollectionBase
    08/21/2012 17:35:03  1  INF          Leaving function CommandCollectionBase.CommandCollectionBase
    08/21/2012 17:35:03  1  INF            Creating the APPLICATION bool exposed parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF          Entering function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF            Creating the APPLICATION bool internal parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF          Entering function Parameter.Parameter
    08/21/2012 17:35:03  1  INF            Entering function Parameter.Initialze
    08/21/2012 17:35:03  1  INF            Leaving function Parameter.Initialze
    08/21/2012 17:35:03  1  INF            Creating the SINGLESERVER bool exposed parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF          Entering function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF            Creating the SINGLESERVER bool internal parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF          Entering function Parameter.Parameter
    08/21/2012 17:35:03  1  INF            Entering function Parameter.Initialze
    08/21/2012 17:35:03  1  INF            Leaving function Parameter.Initialze
    08/21/2012 17:35:03  1  INF          Leaving function Parameter.Parameter
    08/21/2012 17:35:03  1  INF          Entering function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF            Creating the V2V_INPLACE_UPGRADE bool exposed parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF          Entering function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF            Creating the V2V_INPLACE_UPGRADE bool internal parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF          Entering function Parameter.Parameter
    08/21/2012 17:35:03  1  INF            Entering function Parameter.Initialze
    08/21/2012 17:35:03  1  INF            Leaving function Parameter.Initialze
    08/21/2012 17:35:03  1  INF          Leaving function Parameter.Parameter
    08/21/2012 17:35:03  1  INF          Entering function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF            Creating the CLEAN_INSTALL bool exposed parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF          Entering function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF            Creating the CLEAN_INSTALL bool internal parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF          Entering function Parameter.Parameter
    08/21/2012 17:35:03  1  INF            Entering function Parameter.Initialze
    08/21/2012 17:35:03  1  INF            Leaving function Parameter.Initialze
    08/21/2012 17:35:03  1  INF          Leaving function Parameter.Parameter
    08/21/2012 17:35:03  1  INF          Entering function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF            Creating the B2B_UPGRADE bool exposed parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF          Entering function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF            Creating the B2B_UPGRADE bool internal parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF          Entering function Parameter.Parameter
    08/21/2012 17:35:03  1  INF            Entering function Parameter.Initialze
    08/21/2012 17:35:03  1  INF            Leaving function Parameter.Initialze
    08/21/2012 17:35:03  1  INF          Leaving function Parameter.Parameter
    08/21/2012 17:35:03  1  INF          Entering function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF            Creating the SKU2SKU_UPGRADE bool exposed parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF          Entering function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF            Creating the SKU2SKU_UPGRADE bool internal parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF          Entering function Parameter.Parameter
    08/21/2012 17:35:03  1  INF            Entering function Parameter.Initialze
    08/21/2012 17:35:03  1  INF            Leaving function Parameter.Initialze
    08/21/2012 17:35:03  1  INF          Leaving function Parameter.Parameter
    08/21/2012 17:35:03  1  INF          Entering function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF            Creating the runningupgrade bool exposed parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF          Entering function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF            Creating the runningupgrade bool internal parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF          Entering function Parameter.Parameter
    08/21/2012 17:35:03  1  INF            Entering function Parameter.Initialze
    08/21/2012 17:35:03  1  INF            Leaving function Parameter.Initialze
    08/21/2012 17:35:03  1  INF          Leaving function Parameter.Parameter
    08/21/2012 17:35:03  1  INF          Entering function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF            Creating the LanguagePackInstalled bool exposed parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolExposedParameter.BoolExposedParameter
    08/21/2012 17:35:03  1  INF          Entering function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF            Creating the LanguagePackInstalled bool internal parameter
    08/21/2012 17:35:03  1  INF          Leaving function BoolInternalParameter.BoolInternalParameter
    08/21/2012 17:35:03  1  INF          Entering function Parameter.Parameter

  • Crawler Help: Object reference not set to an instance of an object

    I'm trying to write a custom crawler and having some difficulties.  I'm getting the document information from a database.  I'm trying to have the ClickThroughURL be a web URL and the IndexingURL be a UNC path to the file on a back-end file share.  Also, I'm not using DocFetch.  The problem I'm having is that when the crawler runs I get the following error for every card:
    &#034;4/19/05 13:43:30- (940) Aborted Card creation for document: TestDoc1.  Import error: IDispatch error #19876 (0x80044fa4): [Error Importing Card.
    Error writing Indexing File.
    SOAP fault: faultcode='soap:Server' faultstring='Server was unable to process request. --> Object reference not set to an instance of an object.']&#034;
    Has anyone seen this before?  Any help you can provide would be greatly appreciated.  I have included the code from my document.vb in case that helps.
    Thanks,
    Jerry
    DOCUMENT.VB
    Imports System
    Imports Plumtree.Remote.Util
    Imports Plumtree.Remote.Crawler
    Imports System.Resources
    Imports System.Globalization
    Imports System.Threading
    Imports System.IO
    Imports System.Data.SqlClient
    Imports System.Text
    Namespace Plumtree.Remote.CWS.MoFoDocsOpen
        Public Class Document
            Implements IDocument
            Private m_logger As ICrawlerLog
            Private DocumentLocation As String
            Private d_DocumentNumber As Integer
            Private d_Library As String
            Private d_Name As String
            Private d_Author As String
            Private d_AuthorID As String
            Private d_Category As String
            Private d_ClientName As String
            Private d_ClientNumber As String
            Private d_DateCreated As DateTime
            Private d_DocumentName As String
            Private d_DocumentType As String
            Private d_EnteredBy As String
            Private d_EnteredByID As String
            Private d_FolderID As String
            Private d_KEFlag As String
            Private d_LastEdit As DateTime
            Private d_LastEditBy As String
            Private d_LastEditByID As String
            Private d_Maintainer As String
            Private d_MaintainerID As String
            Private d_MatterName As String
            Private d_MatterNumber As String
            Private d_Practice As String
            Private d_Description As String
            Private d_Version As Integer
            Private d_Path As String
            Private d_FileName As String
            Public Sub New(ByVal provider As DocumentProvider, ByVal documentLocation As String, ByVal signature As String)
                Dim location() As String = DocumentLocation.Split(&#034;||&#034;)
                Me.DocumentLocation = DocumentLocation
                Me.d_DocumentNumber = location(0)
                Me.d_Library = location(2)
                Dim objConn As New SqlConnection
                Dim objCmd As New SqlCommand
                Dim objRec As SqlDataReader
                objConn.ConnectionString = &#034;Server=sad2525;Database=PortalDocs;Uid=sa;Pwd=;&#034;
                objConn.Open()
                objCmd.CommandText = &#034;SELECT * FROM DocsOpenAggregate WHERE Library = '&#034; & Me.d_Library & &#034;' AND DocumentNumber = &#034; & Me.d_DocumentNumber
                objCmd.Connection = objConn
                objRec = objCmd.ExecuteReader()
                Do While objRec.Read() = True
                    Me.d_Name = objRec(&#034;Name&#034;)
                    Me.d_Author = objRec(&#034;Author&#034;)
                    Me.d_AuthorID = objRec(&#034;AuthorID&#034;)
                    Me.d_Category = objRec(&#034;Category&#034;)
                    Me.d_ClientName = objRec(&#034;ClientName&#034;)
                    Me.d_ClientNumber = objRec(&#034;ClientNumber&#034;)
                    Me.d_DateCreated = objRec(&#034;DateCreated&#034;)
                    Me.d_DocumentName = objRec(&#034;DocumentName&#034;)
                    Me.d_DocumentType = objRec(&#034;DocumentType&#034;)
                    Me.d_EnteredBy = objRec(&#034;EnteredBy&#034;)
                    Me.d_EnteredByID = objRec(&#034;EnteredByID&#034;)
                    Me.d_FolderID = objRec(&#034;FolderID&#034;)
                    Me.d_KEFlag = objRec(&#034;KEFlag&#034;)
                    Me.d_LastEdit = objRec(&#034;LastEdit&#034;)
                    Me.d_LastEditBy = objRec(&#034;LastEditBy&#034;)
                    Me.d_LastEditByID = objRec(&#034;LastEditByID&#034;)
                    Me.d_Maintainer = objRec(&#034;Maintainer&#034;)
                    Me.d_MaintainerID = objRec(&#034;MaintainerID&#034;)
                    Me.d_MatterName = objRec(&#034;MatterName&#034;)
                    Me.d_MatterNumber = objRec(&#034;MatterNumber&#034;)
                    Me.d_Practice = objRec(&#034;Practice&#034;)
                    Me.d_Description = objRec(&#034;Description&#034;)
                    Me.d_Version = objRec(&#034;Version&#034;)
                    Me.d_Path = objRec(&#034;Path&#034;)
                    Me.d_FileName = objRec(&#034;FileName&#034;)
                Loop
                objCmd = Nothing
                If objRec.IsClosed = False Then objRec.Close()
                objRec = Nothing
                If objConn.State <> ConnectionState.Closed Then objConn.Close()
                objConn = Nothing
            End Sub
            'If using DocFetch, this method returns a file path to the document in the backend repository.
            Public Function GetDocument() As String Implements IDocument.GetDocument
                m_logger.Log(&#034;Document.GetDocument called for &#034; & Me.DocumentLocation)
                Return Me.d_Path
            End Function
            'Returns the metadata information about this document.
            Public Function GetMetaData(ByVal aFilter() As String) As DocumentMetaData Implements IDocument.GetMetaData
                m_logger.Log(&#034;Document.GetMetaData called for &#034; & DocumentLocation)
                Dim DOnvp(23) As NamedValue
                DOnvp(0) = New NamedValue(&#034;Author&#034;, Me.d_Author)
                DOnvp(1) = New NamedValue(&#034;AuthorID&#034;, Me.d_AuthorID)
                DOnvp(2) = New NamedValue(&#034;Category&#034;, Me.d_Category)
                DOnvp(3) = New NamedValue(&#034;ClientName&#034;, Me.d_ClientName)
                DOnvp(4) = New NamedValue(&#034;ClientNumber&#034;, Me.d_ClientNumber)
                DOnvp(5) = New NamedValue(&#034;DateCreated&#034;, Me.d_DateCreated)
                DOnvp(6) = New NamedValue(&#034;DocumentName&#034;, Me.d_DocumentName)
                DOnvp(7) = New NamedValue(&#034;DocumentType&#034;, Me.d_DocumentType)
                DOnvp(8) = New NamedValue(&#034;EnteredBy&#034;, Me.d_EnteredBy)
                DOnvp(9) = New NamedValue(&#034;EnteredByID&#034;, Me.d_EnteredByID)
                DOnvp(10) = New NamedValue(&#034;FolderID&#034;, Me.d_FolderID)
                DOnvp(11) = New NamedValue(&#034;KEFlag&#034;, Me.d_KEFlag)
                DOnvp(12) = New NamedValue(&#034;LastEdit&#034;, Me.d_LastEdit)
                DOnvp(13) = New NamedValue(&#034;LastEditBy&#034;, Me.d_LastEditBy)
                DOnvp(14) = New NamedValue(&#034;LastEditByID&#034;, Me.d_LastEditByID)
                DOnvp(15) = New NamedValue(&#034;Maintainer&#034;, Me.d_Maintainer)
                DOnvp(16) = New NamedValue(&#034;MaintainerID&#034;, Me.d_MaintainerID)
                DOnvp(17) = New NamedValue(&#034;MatterName&#034;, Me.d_MatterName)
                DOnvp(18) = New NamedValue(&#034;MatterNumber&#034;, Me.d_MatterNumber)
                DOnvp(19) = New NamedValue(&#034;Practice&#034;, Me.d_Practice)
                DOnvp(20) = New NamedValue(&#034;Description&#034;, Me.d_Description)
                DOnvp(21) = New NamedValue(&#034;Version&#034;, Me.d_Version)
                DOnvp(22) = New NamedValue(&#034;Path&#034;, Me.d_Path)
                DOnvp(23) = New NamedValue(&#034;FileName&#034;, Me.d_FileName)
                Dim metaData As New DocumentMetaData(DOnvp)
                Dim strExt As String = Right(Me.d_FileName, Len(Me.d_FileName) - InStrRev(Me.d_FileName, &#034;.&#034;))
                Select Case LCase(strExt)
                    Case &#034;xml&#034;
                        metaData.ContentType = &#034;text/xml&#034;
                        metaData.ImageUUID = &#034;{F8F6B82F-53C6-11D2-88B7-006008168DE5}&#034;
                    Case &#034;vsd&#034;
                        metaData.ContentType = &#034;application/vnd.visio&#034;
                        metaData.ImageUUID = &#034;{2CEEC472-7CF0-11d3-BB3A-00105ACE365C}&#034;
                    Case &#034;mpp&#034;
                        metaData.ContentType = &#034;application/vnd.ms-project&#034;
                        metaData.ImageUUID = &#034;{8D6D9F50-D512-11d3-8DB0-00C04FF44474}&#034;
                    Case &#034;pdf&#034;
                        metaData.ContentType = &#034;application/pdf&#034;
                        metaData.ImageUUID = &#034;{64FED895-D031-11D2-8909-006008168DE5}&#034;
                    Case &#034;doc&#034;
                        metaData.ContentType = &#034;application/msword&#034;
                        metaData.ImageUUID = &#034;{0C35DD71-6453-11D2-88C3-006008168DE5}&#034;
                    Case &#034;dot&#034;
                        metaData.ContentType = &#034;application/msword&#034;
                        metaData.ImageUUID = &#034;{0C35DD71-6453-11D2-88C3-006008168DE5}&#034;
                    Case &#034;rtf&#034;
                        metaData.ContentType = &#034;text/richtext&#034;
                        metaData.ImageUUID = &#034;{F8F6B82F-53C6-11D2-88B7-006008168DE5}&#034;
                    Case &#034;xls&#034;
                        metaData.ContentType = &#034;application/vnd.ms-excel&#034;
                        metaData.ImageUUID = &#034;{0C35DD72-6453-11D2-88C3-006008168DE5}&#034;
                    Case &#034;xlt&#034;
                        metaData.ContentType = &#034;application/vnd.ms-excel&#034;
                        metaData.ImageUUID = &#034;{0C35DD72-6453-11D2-88C3-006008168DE5}&#034;
                    Case &#034;pps&#034;
                        metaData.ContentType = &#034;application/vnd.ms-powerpoint&#034;
                        metaData.ImageUUID = &#034;{0C35DD73-6453-11D2-88C3-006008168DE5}&#034;
                    Case &#034;ppt&#034;
                        metaData.ContentType = &#034;application/vnd.ms-powerpoint&#034;
                        metaData.ImageUUID = &#034;{0C35DD73-6453-11D2-88C3-006008168DE5}&#034;
                    Case &#034;htm&#034;
                        metaData.ContentType = &#034;text/html&#034;
                        metaData.ImageUUID = &#034;{D2E2D5E0-84C9-11D2-A0C5-0060979C42D8}&#034;
                    Case &#034;html&#034;
                        metaData.ContentType = &#034;text/html&#034;
                        metaData.ImageUUID = &#034;{D2E2D5E0-84C9-11D2-A0C5-0060979C42D8}&#034;
                    Case &#034;asp&#034;
                        metaData.ContentType = &#034;text/plain&#034;
                        metaData.ImageUUID = &#034;{F8F6B82F-53C6-11D2-88B7-006008168DE5}&#034;
                    Case &#034;idq&#034;
                        metaData.ContentType = &#034;text/plain&#034;
                        metaData.ImageUUID = &#034;{F8F6B82F-53C6-11D2-88B7-006008168DE5}&#034;
                    Case &#034;txt&#034;
                        metaData.ContentType = &#034;text/plain&#034;
                        metaData.ImageUUID = &#034;{F8F6B82F-53C6-11D2-88B7-006008168DE5}&#034;
                    Case &#034;log&#034;
                        metaData.ContentType = &#034;text/plain&#034;
                        metaData.ImageUUID = &#034;{F8F6B82F-53C6-11D2-88B7-006008168DE5}&#034;
                    Case &#034;sql&#034;
                        metaData.ContentType = &#034;text/plain&#034;
                        metaData.ImageUUID = &#034;{F8F6B82F-53C6-11D2-88B7-006008168DE5}&#034;
                    Case Else
                        metaData.ContentType = &#034;application/octet-stream&#034;
                        metaData.ImageUUID = &#034;{F8F6B82F-53C6-11D2-88B7-006008168DE5}&#034;
                End Select
                metaData.Name = Me.d_Name
                metaData.Description = Me.d_Description
                metaData.FileName = Me.d_FileName ' This is a file name - for example &#034;2jd005_.DOC&#034;
                metaData.IndexingURL = Me.d_Path ' This is a file path - for example &#034;\\fileserver01\docsd$\SF01\DOCS\MLS1\NONE\2jd005_.DOC&#034;
                metaData.ClickThroughURL = &#034;http://mofoweb/docsopen.asp?Unique=&#034; & HttpUtility.HtmlEncode(Me.DocumentLocation)
                metaData.UseDocFetch = False
                Return metaData
            End Function
            'Returns the signature or last-modified-date of this document that indicates to the portal whether the document needs refreshing.
            Public Function GetDocumentSignature() As String Implements IDocument.GetDocumentSignature
                Dim SigString As New StringBuilder
                Dim SigEncode As String
                SigString.Append(Me.d_DocumentNumber & &#034;||&#034;)
                SigString.Append(Me.d_Library & &#034;||&#034;)
                SigString.Append(Me.d_Name & &#034;||&#034;)
                SigString.Append(Me.d_Author & &#034;||&#034;)
                SigString.Append(Me.d_AuthorID & &#034;||&#034;)
                SigString.Append(Me.d_Category & &#034;||&#034;)
                SigString.Append(Me.d_ClientName & &#034;||&#034;)
                SigString.Append(Me.d_ClientNumber & &#034;||&#034;)
                SigString.Append(Me.d_DateCreated & &#034;||&#034;)
                SigString.Append(Me.d_DocumentName & &#034;||&#034;)
                SigString.Append(Me.d_DocumentType & &#034;||&#034;)
                SigString.Append(Me.d_EnteredBy & &#034;||&#034;)
                SigString.Append(Me.d_EnteredByID & &#034;||&#034;)
                SigString.Append(Me.d_FolderID & &#034;||&#034;)
                SigString.Append(Me.d_KEFlag & &#034;||&#034;)
                SigString.Append(Me.d_LastEdit & &#034;||&#034;)
                SigString.Append(Me.d_LastEditBy & &#034;||&#034;)
                SigString.Append(Me.d_LastEditByID & &#034;||&#034;)
                SigString.Append(Me.d_Maintainer & &#034;||&#034;)
                SigString.Append(Me.d_MaintainerID & &#034;||&#034;)
                SigString.Append(Me.d_MatterName & &#034;||&#034;)
                SigString.Append(Me.d_MatterNumber & &#034;||&#034;)
                SigString.Append(Me.d_Practice & &#034;||&#034;)
                SigString.Append(Me.d_Description & &#034;||&#034;)
                SigString.Append(Me.d_Version & &#034;||&#034;)
                SigString.Append(Me.d_Path & &#034;||&#034;)
                SigString.Append(Me.d_FileName & &#034;||&#034;)
                Dim encoding As New UTF8Encoding
                Dim byteArray As Byte() = encoding.GetBytes(SigString.ToString())
                SigEncode = System.Convert.ToBase64String(byteArray, 0, byteArray.Length)
                Return SigEncode
            End Function
            'Returns an array of the users with access to this document.
            Public Function GetUsers() As ACLEntry() Implements IDocument.GetUsers
                'no acl info retrieved
                Dim aclArray(-1) As ACLEntry
                Return aclArray
            End Function
            'Returns an array of the groups with access to this document.
            Public Function GetGroups() As ACLEntry() Implements IDocument.GetGroups
                'no acl info retrieved
                Dim aclArray(-1) As ACLEntry
                Return aclArray
            End Function
        End Class
    End Namespace

    1. I don't think you can just set the index url to a unc path.
    2. Try creating an index aspx page. In your MetaData.IndexURL set it to the index aspx page, and include query string params for the encoded unc path as well as the content type.
    3. In the index servlet, get the content type and path from the query string
    4. Get the filename from the file path
    5. Set the headers for content-type and Content-Disposition, e.g.
    Response.ContentType="application/msword"
    Response.AddHeader("Content-Disposition", "inline; filename'" + filename)
    6. Stream out the file:
    FileStream fs = new FileStream(path, FileMode.Open)
    byte[] buffer = new byte[40000]
    int result
    System.IO.Stream output = Response.OutputStream
    do
    result = fs.Read(buffer, 0, 40000)
    output.Write(buffer, 0, result)
    while (result == 40000)
    put the above in a try-catch, and then delete the temp file in the finally block.
    If this does not help, set a breakpoint in the code to find the error. Also use Log4Net to log any errors.

  • Error when a TS step has a condition to check for custom variable. Variable is set on the collection.

    SCCM Version = SCCM 2012 R2 CU3
    Background
    I would like to setup some sort of safety check to help prevent accidentally sending and OSD out to all the servers managed by SCCM. The solution I am trying to use is making the TS do a check for a custom variable. If the variable is NOT set to TRUE
    then it should reboot the machine back to the currently installed OS.
    The variable is called "AllowOSD"
    AllowOSD is set correctly on my "Test Servers" collection
    I'm using the built in "Reboot Computer" step in the TS
    The condition on the Reboot Computer step is very basic - "Task Sequence Variable AllowOSD is not equal TRUE".
    I am testing the TS on a VM guest (Hyper-V)
    I'm deploying via PXE for these tests...
    The Issue
    As soon as the TS starts I get the annoyingly generic 0x80004005 error - smsts.log posted on github -
    smsts.log-A
    Possibly related issue:
    I have a vbscript that prompts for, and sets, the computer name. This works fine if placed after the format disk step, but if I place it before the format disk step then I get error 0x800700A1. If I format the internal HD first then I don't get an error
    and it all works fine.
    smsts.log posted on github - smsts.log-B
    Be aware VM_1 and VM_2 have unformatted disks (vhdx). I don't want them to be formatted before checking that the task sequence should really be running in the first place. As already mentioned, I am trying to prevent someone wiping out a bunch of servers
    by accident.
    My Task Sequences are based on the defaults created by the wizard. Here are the step I'm using...
    * Reboot if AllowOSD is not TRUE
    Restart in Windows PE
    * set Computer Name
    Partition DIsk 0 - DIOS
    Partition Disk 0 - UEFI
    Install Operating System
    Apply Windows Settings
    Apply Network Settings
    Setup Windows and Config Manager
    * = steps I have created.
    All other steps are defaults as created by wizard.
    Please note the "Restart in Windows PE" step does a conditional check on "_SMSTSInWinPE" without any errors. it is looking like the use of custom variables is not supported until the local HD is formatted and mounted. Can
    anyone confirm this behaviour, or what I can do to get around this problem.
    I have tried using a vbscript but triggering a reboot from VB does nothing, hence using the Reboot Computer step in the TS.
    Thanks
    "Well I'm all out of ideas." - 85

    As others have stated, your options are limited the moment you rely on PXE and WinPE but I think all you need to do is refine your collection target a bit.
    Why not instead of deploying your TS to All Systems (which is what I'm guess you're doing) and trying to put a condition in, deploy to a collection that is based on a workstation collection then include unknown computers?  Then any "known workstation"
    will have a MAC stored and thus be permitted to use the TS, unknown machines will be as well ... but "known servers" will be blocked?
    COnsidering the PXE looks for permitted MAC addresses this should work (Ill try it in my own lab).
    Tested and verified:
    Simply create a collection with a parent collection of all systems.
    Add a workstation query:
    select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System where SMS_R_System.OperatingSystemNameandVersion LIKE "%Workstation%"
    Then "include" unknown computers.
    End result is any machine that has "server" in it's version that has already been deployed will not be able to use the deployment.  If you'd rather base existing computer on an OU or group membership just modify the first query how you see fit.
     This will let known workstations (or whatever) and unknown machines get deployed to ... but known machines NOT in that collection will be skipped.

  • Adding a custom report to a document set

    Hi,
    We are trying to add a custom report to a document set in OM. When a sales order is released, the sequence of events to occur is - a standard pick list report runs followed by the custom report(a despatch note).
    However, I cannot associate the parameters so that the parameters that are driving the standard apps pick list report are also driving the custom report.
    Anyone tried this before?
    Thanks muchly

    Eventually I figured this out. In 54, the edit dialog for the clickstream cloud is set up in the JS at:
         /libs/cq/personalization/widgets/source/analytics.init.js
    Effectively the 'registration' of the various stores is hardcoded in this JS file, with lines like so:
         //eventinfodata
         reg.call(this, CQ_Analytics.EventDataMgr);
    So, we could overlay the entire personalization widgets clientlib, but that seems crazy just to add one line of code.
    So, what I've done is to write my own clientlib and bolded it onto the cq.personalization category (which the /libs/cq/personalization/widgets clientlib is part of). This JS sets up another listener (on the click of the edit button) which adds the additional tab to the edit dialog.
    If anybody is interested in seeing how this was done, buzz me on twitter @tomblackford

  • Help on custom Serialization

    Hey all,
    I'm trying to design a networked whiteboard application and the thought I had was instead of trying to send a vector of the points the user has drawn, I send a BufferedImage with transparent background and the server simply draws each user's "layer" one on top of the other and distributes this to all clients. Obviously the problem here is that BufferedImage does not implement Serializable, and I don't have the knowledge to write custom serialization methods, can someone help me out?
    ~nill

    Convert the image to a byte array:
    Here is a small example...
         imageFile = new File("image.jpg");
         fis = new FileInputStream(imageFile);
         length = imageFile.length();
         if(length>Integer.MAX_VALUE)
              System.out.println("IMAGE FILE IS TOO LARGE");
         imageByteArray = new byte[(int)length];
         int offset=0;
         int numRead=0;
         while(offset<imageByteArray.length &&(numRead=fis.read(imageByteArray,offset, imageByteArray.length-offset))>=0)
              offset+=numRead;
         if(offset<imageByteArray.length)
              throw new IOException("Could not completely read file: "+imageFile.getName());
         fis.close();
    Hope that this helps..

  • MSA copying activity: flag 'main team member' not set automatically

    Hello forum,
    when I copy an activity in msa,
    the responisble persons are copied too, but saving is not possible:
    error: flag main team member not set
    So i have to set this flag manually.
    Why does the system not copy this flag too ?
    Where can I change this bad behaviour ?
    Thanks
    Gerd

    Hello,
    did you already check the following:
    1) activities created in CRM have this main flag set properly for exactly one responsible employee defined for this function
    2) customizing is synchronized properly to CDB/Mobile:
    CRM_DNL_PAR_FCT
    CRM_DNL_PAR_PDD
    CRM_DNL_PAR_PDP
    CRM_DNL_PAR_UIS
    3) activities downloaded to mobile have this main flag set properly for exactly one responsible employee defined for this function
    4) it is possible to create the same activities in mobile as in CRM using the same functions (e.g. the customizing is proper on mobile)
    For my understanding I would rather suggest to change/correct the data in CRM instead of modifying the copy functionality for mobile.
    Regards,
    Wolfhard Bierlein

Maybe you are looking for

  • Export / Import Mapping into Different Project in same repository

    Hi, Any one tell me, its this possible? We have one repository ( OWB 10 R2 ) and two projects named dev_project and test_project. We want to copy or (export /import) the mappings from dev_project to test_project, how to do this? It seems export and i

  • Regarding collect statement - Production report

    Dear Experts, I've the following requirement A ) I'm creating a ALV report from Z table where i want the summary of the qty across different processing type like CT , ST , WS  & FG . B ) For each processing types i want the total qty to be displayed

  • Suitable Workaround for MS14-025: Vulnerability in Group Policy Preferences could allow elevation of privilege

    Hi, We use the GPP to deploy a local user account which is then made a member of the local administrators group, as IT admins we use this account for local activities such as first prep work of the machine, rather than logging in using a domain admin

  • Dualphone 3088 not signing in to skype

    I have been using a dualphone for 3 years, and not had any problems, but suddenly it is not able to sign in to Skype.  I have tried all the troubleshooting suggestions, but nothing works.  I phone abroad a lot, and would really like this fixed.  Has

  • Library Link Errors

    My links on my library items are malfunctioning. Even though the links appear correct in the code and design views, and function properly at times, out of nowhere an extra "html" is inserted in the URL, causing the links to be broken. Can anyone help