Creating web farma

Hi,
How to create a web farma in indesign which is required for press printing ?

What is a 'web farma'? A "web farm" with a typo? (If it is, then what is a "web farm"? Surely not literally what those words say?)
Based on your recent questions: you may benefit from taking a hands-on course for InDesign. InDesign is a complicated piece of software; and that is because it's targeted at the professional-up-to-very-professional segment of the graphics market.
Try Lynda.com (InDesign Video Courses and Tutorials from lynda.com) for an online course. Alternatively, purchase a good starters' book: Sandee Cohen's "Visual Quickstart" (http://www.amazon.com/InDesign-CC-Visual-QuickStart-Guide/dp/0321929578) is often mentioned favorably.

Similar Messages

  • Unable to create web app with PowerShell - An update conflict has occurred

    I am trying to create a new Web Application using PowerShell. I need to use PowerShell because I need to create the Web App using classic authentication and not Claims authentication. the first time I created the Web App, everything went great. Ever since
    the first time, I get an error and the web app creation does not complete. Just as an FYI, I can create a new Web App using Central Admin, but that creates it with Claims authentication which I cannot use.
    Here is my PowerShell script
    New-SPWebApplication -Name "SharePoint2013 (82)" -ApplicationPool "SharePoint2013-82" -AuthenticationMethod "NTLM" -ApplicationPoolAccount (Get-SPManagedAccount "GLOBAL\SP_AppPool") -Port 82 -URL "http://sharepoint2013"
    Here is the error I get in PowerShell
    New-SPWebApplication : An update conflict has occurred, and you must re-try this action. The object SPWebApplication
    Name=SharePoint2013 (82) was updated by DOMAIN\SP_Administrator, in the powershell (13020) process, on machine SPWEB01.
     View the tracing log for more information about the conflict.
    At line:1 char:1
    + New-SPWebApplication -Name "SharePoint2013 (82)" -ApplicationPool "SharePoint201 ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : InvalidData: (Microsoft.Share...PWebApplication:SPCmdletNewSPWebApplication) [New-SPWebA
       pplication], SPUpdatedConcurrencyException
        + FullyQualifiedErrorId : Microsoft.SharePoint.PowerShell.SPCmdletNewSPWebApplicationUnknown SQL Exception 547 occurred. Additional error information from SQL Server is included below.
    The DELETE statement conflicted with the REFERENCE constraint "FK_Dependencies1_Objects". The conflict occurred in database "SP_Config", table "dbo.Dependencies", column 'ObjectId'.
    The statement has been terminated.
    I also get  this error from the trace
    Unknown SQL Exception 547 occurred. Additional error information from SQL Server is included below.
    The DELETE statement conflicted with the REFERENCE constraint "FK_Dependencies1_Objects". The conflict occurred in database "SP_Config", table "dbo.Dependencies", column 'ObjectId'.
    The statement has been terminated.
    I have tried to resolve the issue by performing the following:
    Delete the partially created web app using Central Admin or PowerShell
    Clear the file system cache on all servers in the farm (Stopping wss timer job, Saving Copy of the
    cache.ini file from C:\Documents and Settings\All Users\application data\Microsoft\SharePoint\Config folder. Clearing all the .xml files from the location except cache.ini but Edit the cache.ini to have value 1. Starting the timer job)
    Use Products Configuration Wizard (no detach, just 'upgrade') - People have said to select the option to disconnect the server from server farm and revert back again at next step (so you actually do not disconnect), but there is no next step that I have
    encountered. You select 'disconnect', hit next, and the server disconnects.
    Restart all the servers in the farm
    Run the PowerShell script again...still get the same error
    I have tried it on multiple servers in the farm too.

    Hi Michael,
    I found a similar thread for you reference:
    http://social.msdn.microsoft.com/Forums/sharepoint/en-US/9ccef7bf-87a9-4849-b086-4db2d898f1d7/cannot-create-new-web-application-wss-30?forum=sharepointadminlegacy 
    If it doesn’t work, sometimes the issue might be caused by long time keep powershell opening and generating some cache files. So please try re-opening the powershell and test the issue again.
    http://blogs.msdn.com/b/ronalg/archive/2011/06/24/mount-spcontentdatabase-errors-on-2nd-and-subsequent-attempts-of-same-database.aspx?Redirected=true 
    http://www.oakwoodinsights.com/sharepoint-powershell-surprise/
    In addition, here is an article which explains the possible reason of the SQL error:
    http://technet.microsoft.com/en-us/library/ee513056(v=office.14).aspx
    Regards,
    Please remember to mark the replies as answers if they help and unmark them if they provide no help. If you have feedback for TechNet Subscriber Support, contact
    [email protected] .
    Rebecca Tu
    TechNet Community Support

  • Error in creating web application through power shell

    hi,
     i have taken the  ps script from the  below url :
    credits to Roger  :
    http://blogs.msdn.com/b/rcormier/archive/2012/09/01/how-to-create-sharepoint-web-applications-with-powershell.aspx
    http://gallery.technet.microsoft.com/Create-SharePoint-Web-742a8fb9
    But when i am running the script, i am getting many errors:
    Note: i am not using appln pool account password [as i dont know the password]
    want to know whether  this paramter is necessary.
    $ver = $host | select version
    if($Ver.version.major -gt 1) {$Host.Runspace.ThreadOptions = "ReuseThread"}
    if(!(Get-PSSnapin Microsoft.SharePoint.PowerShell -ea 0))
    Write-Progress -Activity "Loading Modules" -Status "Loading Microsoft.SharePoint.PowerShell"
    Add-PSSnapin Microsoft.SharePoint.PowerShell
    Write-Progress -Activity "Creating Web Application" -Status "Setting Variables"
    #Set Individual Web App Variables
    #This is the Web Application URL
    $WebApplicationURL = "http://mysrvr:2020/"
    #This is the Display Name for the SharePoint Web Application
    $WebApplicationName = "myweb1"
    #This is the Content Database for the Web Application
    $ContentDatabase = "myContentDB"
    #Set Common Variables
    #This is the Display Name for the Application Pool
    $ApplicationPoolDisplayName = "mapppool2020"
    #This is identity of the Application Pool which will be used (Domain\User)
    $ApplicationPoolIdentity = "mydomain\myidd"
    #This is the password of the Appliation Pool account which will be used
    #$ApplicationPoolPassword = "Pass@word1"
    #This is the Account which will be used for the Portal Super Reader Account
    $PortalSuperReader = "i:0#.w|in\hariharan.venugopalk"
    #This is the Account which will be used for the Portal Super User Account
    $PortalSuperUser = "i:0#.w|in\spinstall.dev"
    Write-Progress -Activity "Creating Web Application" -Status "Loading Functions"
    #Create Functions
    Function CreateClaimsWebApp($WebApplicationName, $WebApplicationURL, $ContentDatabase, $HTTPPort)
        #AppPoolUsed is set when calling the ValidateAppPool function. This will be true if the application pool is already running SharePoint web appplications
        #If the application pool is already being used in web applications, the syntax for New-SPWebApplication changes
        if($AppPoolUsed -eq $True)
            #Create the web application, assign it to the WebApp variable.  The WebApp variable will be used to set object cache user accounts
            Write-Progress -Activity "Creating Web Application" -Status "Using Application Pool With Existing Web Applications"
            Set-Variable -Name WebApp -Value (New-SPWebApplication -ApplicationPool $ApplicationPoolDisplayName -Name $WebApplicationName -url $WebApplicationURL -port $HTTPPort -DatabaseName $ContentDatabase -HostHeader $hostHeader
    -AuthenticationProvider (New-SPAuthenticationProvider)) -Scope Script
            #Call the SetObjectCache function, which sets the object cache.
            Write-Progress -Activity "Creating Web Application" -Status "Configuring Object Cache Accounts"
            SetObjectCache
        else
            #Create the web application, assign it to the WebApp variable.  The WebApp variable will be used to set object cache user accounts
            Write-Progress -Activity "Creating Web Application" -Status "Using Application Pool With No Existing Web Applications"
            Set-Variable -Name WebApp -Value (New-SPWebApplication -ApplicationPool $ApplicationPoolDisplayName -ApplicationPoolAccount $AppPoolManagedAccount.Username -Name $WebApplicationName -url $WebApplicationURL -port $HTTPPort
    -DatabaseName $ContentDatabase -HostHeader $hostHeader -AuthenticationProvider (New-SPAuthenticationProvider)) -Scope Script
            #Call the SetObjectCache function, which sets the object cache.
            Write-Progress -Activity "Creating Web Application" -Status "Configuring Object Cache Accounts"
            SetObjectCache
    Function ValidateURL($WebApplicationURL)
        #Find out if a web application with the target URL exists
        if(get-spwebapplication $WebApplicationURL -ErrorAction SilentlyContinue)
            #If a web application with the specifid URL already exists, wait 5 seconds and exit
            Write-Progress -Activity "Creating Web Application" -Status "Aborting Process Due To URL Conflict"
            Write-Host "Aborting: Web Application $WebApplicationURL Already Exists" -ForegroundColor Red
            sleep 5
            #Setting the CriticalError value to $True results in the script to not create anything
            Set-Variable -Name CriticalError -Value $True
        #If the WebApplicationURL passed is not already a SharePoint web application, find out if it starts with HTTP or HTTPS
        elseif($WebApplicationURL.StartsWith("http://"))
                #If the string starts with http://, and not https://, trim the protocol from the URL.  Set the host as the host header
                Set-Variable HostHeader -Value ($WebApplicationURL.Substring(7)) -Scope Script
                #If we're using HTTP, use port 80
                Set-Variable -Name HTTPPort -Value "80" -Scope Script
            elseif($WebApplicationURL.StartsWith("https://"))
                #If the string starts with https://, and not http://, trim the protocol from the URL.  Set the host as the host header
                Set-Variable HostHeader -Value ($WebApplicationURL.Substring(8)) -Scope Script
                #If we're using HTTPS, use port 443
                Set-Variable -Name HTTPPort -Value "443" -Scope Script
    Function ValidateAppPool($AppPoolName, $WebApplicationURL)
        #Change the ErrorActionPreference to SilentlyContinue while preserving the original value in a temporary variable
        #Failing to do this will result in error messages being displayed if Get-WebAppPoolState does not return an object.  The script would still continue
        $CurrentErrorActionPreference = $ErrorActionPreference
        $ErrorActionPreference = "SilentlyContinue"
        #Check to see if an application pool with the name passed by the AppPoolName variable already exists, assign this to a variable.
        #This variable will be used in order to determine if the application pool exists, but is not part of SharePoint
        $TestAppPool = Get-WebAppPoolState $AppPoolName
        #If we have a SharePoint application pool with the value passed by the AppPoolName variable, find out if there are any sites using that app pool
        #This changes the syntax used with New-SPWebApplication
        if(Get-SPServiceApplicationPool $AppPoolName)
            #Return all application pools used by all web applications
            $AppPools = Get-SPWebApplication | select ApplicationPool
            #Providing there is more than one application pool, find out what their names are
            if($AppPools)
                foreach($Pool in $AppPools)
                    #Get The application pool display name for each application pool returned
                    [Array]$Poolchild = $Poolchild += ($Pool.ApplicationPool.DisplayName)
                    #If any application pool matches the value passed by ApplicationPoolDisplayName, set AppPoolUsed to True
                    #This is referenced in the CreateClaimsWebApp function
                    if($Poolchild.Contains($ApplicationPoolDisplayName))
                        Set-Variable -Name AppPoolUsed -Value $True -Scope Script
                    #If the application pool display name does not match the value passed by ApplicationPoolDisplayName, set AppPoolUsed to False
                    #This is referenced in the CreateClaimsWebApp function
                    else
                        Set-Variable -Name AppPoolUsed -Value $False -Scope Script
            #Since this is a SharePoint Application Pool, set the AppPool value to the the SPServiceApplicationPool object returned
            Set-Variable -Name AppPool -Value (Get-SPServiceApplicationPool $AppPoolName) -scope Script
            #Set the AppPoolManagedAccount variable to the name of the managed acount used by the application pool returned
            #AppPoolManagedAccount is used in the CreateClaimsWebApp function if the application pool does not have existing web applications that are using it
            Set-Variable -Name AppPoolManagedAccount -Value (Get-SPManagedAccount | ? {$_.username -eq ($AppPool.ProcessAccountName)}) -scope Script
        #Check to see if the application pool is in IIS, but is not a SharePoint app pool
        elseif($TestAppPool)
            #If the application pool exists in IIS and is not a SharePoint application pool, abort the script by setting CriticalError to True
            Write-Host "Aborting: Application Pool $AppPoolName already exists on the server and is not a SharePoint Application Pool `n`rWeb Application `"$WebApplicationURL`" will not be created" -ForegroundColor
    Red
            Set-Variable -Name CriticalError -Value $True
        #If it's not a SharePoint app pool, and it doesn't exist in IIS, we have to create one
        elseif(!($TestAppPool))
            #Find out if a managed account exists by calling the ValidateManagedAccount function
            validateManagedAccount $ApplicationPoolIdentity
            #If the managed account exists, create an application pool using the existing managed account
            if($ManagedAccountExists -eq $True)
                #Set the AppPoolManagedAccount to the identity of the managed acocunt referenced by the ApplicationPoolIdentity variable
                Write-Host "Creating New App Pool using Existing Managed Account"
                Set-Variable -Name AppPoolManagedAccount -Value (Get-SPManagedAccount $ApplicationPoolIdentity | select username) -scope "Script"
                #Create a new SPServiceApplicationPool, assign that to the AppPool variable
                Set-Variable -Name AppPool -Value (New-SPServiceApplicationPool -Name $ApplicationPoolDisplayName -Account $ApplicationPoolIdentity) -scope "Script"
            #If there is no managed account matching the account referenced by the ApplicationPoolIdentity, create it
            else
                #Use the ApplicationPoolIdentity and ApplicationPoolPassword to create a credential object
                #This is necessary when creating a new managed account
                Write-Host "Creating New Managed Account And App Pool"
                $AppPoolCredentials = New-Object System.Management.Automation.PSCredential $ApplicationPoolIdentity, (ConvertTo-SecureString $ApplicationPoolPassword -AsPlainText -Force)
                #Create a new managed account, assign that to the AppPoolManagedAccount variable
                Set-Variable -Name AppPoolManagedAccount -Value (New-SPManagedAccount -Credential $AppPoolCredentials) -scope "Script"
                #Create a new application pool using the new managed account, assign this to the AppPool variable
                Set-Variable -Name AppPool -Value (New-SPServiceApplicationPool -Name $ApplicationPoolDisplayName -Account (get-spmanagedaccount $ApplicationPoolIdentity)) -scope "Script"
        #Return the ErrorActionPreference to the default value
        $ErrorActionPreference = $CurrentErrorActionPreference
    Function ValidateManagedAccount($ApplicationPoolIdentity)
        #Find out if the manage account referenced by the AppPoolIdentity already exists
        #If it does, set ManagedAccountExists to True
        if(Get-SPManagedAccount $ApplicationPoolIdentity -ErrorAction SilentlyContinue)
            Set-Variable -Name ManagedAccountExists -Value $True -Scope Script
        #If it does not, set ManagedAccountExists to False
        else
            Set-Variable -Name ManagedAccountExists -Value $False -Scope Script
    Function ClearScriptVariables
        #Set the ErrorActionPreference to SilentlyContinue
        #If this is not set, and the script variables referenced have not been set, an error message will be returned.  The script would still continue
        $CurrentErrorActionPreference = $ErrorActionPreference
        $ErrorActionPreference = "SilentlyContinue"
        #Remove the CriticalError variable
        Remove-Variable $CriticalError -ErrorAction SilentlyContinue
        $ErrorActionPreference = $CurrentErrorActionPreference
    Function SetObjectCache
        #Set object cache user account properties based on the value of the parameters supplied
        $WebApp.Properties["portalsuperuseraccount"] = $PortalSuperUser
        $WebApp.Properties["portalsuperreaderaccount"] = $PortalSuperReader
        #Create a New Policy for the Super User
        $SuperUserPolicy = $WebApp.Policies.Add($PortalSuperUser, "Portal Super User Account")
        #Assign Full Control To the Super User
        $SuperUserPolicy.PolicyRoleBindings.Add($WebApp.PolicyRoles.GetSpecialRole([Microsoft.SharePoint.Administration.SPPolicyRoleType]::FullControl))
        #Create a New Policy for the Super Reader
        $SuperReaderPolicy = $WebApp.Policies.Add($PortalSuperReader, "Portal Super Reader Account")
        #Assign Full Read to the Super Reader
        $SuperReaderPolicy.PolicyRoleBindings.Add($WebApp.PolicyRoles.GetSpecialRole([Microsoft.SharePoint.Administration.SPPolicyRoleType]::FullRead))
        #Commit these changes to the web application
        $WebApp.Update()
    #Script
    #Call the ClearScriptVariables function to empty out varialbes that should be blank when the script executes.
    ClearScriptVariables
    #Validate the URL passed by calling the ValidateURL function
    Write-Progress -Activity "Creating Web Application" -Status "Validating Web Application URL Variables"
    ValidateURL $WebApplicationURL
    #Validate the application pool variables by calling the ValidateAppPool function
    Write-Progress -Activity "Creating Web Application" -Status "Validating Application Pool Variables"
    ValidateAppPool $ApplicationPoolDisplayName $WebApplicationURL
    #As long as CriticalError has not been set, create the web application using the variables passed.
    if(!($CriticalError))
    Write-Progress -Activity "Creating Web Application" -Status "Creating Claims-Based Web Application"
    CreateClaimsWebApp $WebApplicationName $WebApplicationURL $ContentDatabase $HTTPPort
    error  is thrown below:
    deployment
    S D:\myworkspace\bif> iisreset
    ttempting stop...
    nternet services successfully stopped
    ttempting start...
    nternet services successfully restarted
    S D:\myworkspace\bif> .\CreateSP2013ClaimsWebApplication.ps1
    reating New Managed Account And App Pool
    ew-SPWebApplication : "mysrvr:2020/" contains invalid character ':'.
    t D:\myworkspace\bif\CreateSP2013ClaimsWebApplication.ps1:68 char:43
             Set-Variable -Name WebApp -Value (New-SPWebApplication
    ApplicationPool  ...
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ~~
       + CategoryInfo         
    : InvalidData: (Microsoft.Share...PWebApplication:
      SPCmdletNewSPWebApplication) [New-SPWebApplication], ArgumentException
       + FullyQualifiedErrorId : Microsoft.SharePoint.PowerShell.SPCmdletNewSPWeb
      Application
    annot index into a null array.
    t D:\myworkspace\bif\CreateSP2013ClaimsWebApplication.ps1:235 char:5
         $WebApp.Properties["portalsuperuseraccount"] = $PortalSuperUser
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       + CategoryInfo         
    : InvalidOperation: (:) [], RuntimeException
       + FullyQualifiedErrorId : NullArray
    cannot index into a null array.
    t D:\myworkspace\bif\CreateSP2013ClaimsWebApplication.ps1:236 char:5
         $WebApp.Properties["portalsuperreaderaccount"] = $PortalSuperReader
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       + CategoryInfo         
    : InvalidOperation: (:) [], RuntimeException
       + FullyQualifiedErrorId : NullArray
    ou cannot call a method on a null-valued expression.
    t D:\myworkspace\bif\CreateSP2013ClaimsWebApplication.ps1:239 char:5
         $SuperUserPolicy = $WebApp.Policies.Add($PortalSuperUser, "Portal Super
    ser ...
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ~~
       + CategoryInfo         
    : InvalidOperation: (:) [], RuntimeException
       + FullyQualifiedErrorId : InvokeMethodOnNull
    ou cannot call a method on a null-valued expression.
    t D:\myworkspace\bif\CreateSP2013ClaimsWebApplication.ps1:242 char:5
    SuperUserPolicy.PolicyRoleBindings.Add($WebApp.PolicyRoles.GetSpecialRole([
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ~~
       + CategoryInfo         
    : InvalidOperation: (:) [], RuntimeException
       + FullyQualifiedErrorId : InvokeMethodOnNull
    ou cannot call a method on a null-valued expression.
    t D:\myworkspace\bif\CreateSP2013ClaimsWebApplication.ps1:245 char:5
         $SuperReaderPolicy = $WebApp.Policies.Add($PortalSuperReader, "Portal
    uper  ...
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ~~
       + CategoryInfo         
    : InvalidOperation: (:) [], RuntimeException
       + FullyQualifiedErrorId : InvokeMethodOnNull
    ou cannot call a method on a null-valued expression.
    t D:\myworkspace\bif\CreateSP2013ClaimsWebApplication.ps1:248 char:5
    SuperReaderPolicy.PolicyRoleBindings.Add($WebApp.PolicyRoles.GetSpecialRole
     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ~~
       + CategoryInfo         
    : InvalidOperation: (:) [], RuntimeException
       + FullyQualifiedErrorId : InvokeMethodOnNull
    ou cannot call a method on a null-valued expression.
    t D:\myworkspace\bif\CreateSP2013ClaimsWebApplication.ps1:251 char:5
         $WebApp.Update()
         ~~~~~~~~~~~~~~~~
       + CategoryInfo         
    : InvalidOperation: (:) [], RuntimeException
       + FullyQualifiedErrorId : InvokeMethodOnNull

    Hi Benjamin,
    If you're getting a Null Value error anywhere, that means a variable you're referencing isn't set to anything. If you're getting that try echoing out each variable after it's assigned to see if it's set to anything.
    The link you are referring is for SharePoint 2010 and verified on Windows Server 2008 R2 and 2008, but not Windows Server 2012.
    The approach in this case includes the following per the blog:
    Check to see if a web application with the current specified URL is already in use – exit if it is
    Check to see if an application pool with the name already exists. If so use it, otherwise create one
    Create a web application based on the parameters specified
    Assign the object cache properties to the new web application
    Create policies for the object cache users to the web application
    To simplified the code, we could use powershell below to check if web application and application pool have been already in use ahead. And skip the last two steps in the first time.
    Get-SPWebApplication | fl displayname, applicationpool
    Please refer to New-SPWebApplication
    which is used to create a new web application within the local farm:
    http://technet.microsoft.com/en-us/library/ff607931(v=office.15).aspx. Only two parameters i.e. ApplicationPool and Name are required, we could try a simple command at first:
    Please run Get-SPManagedAccount to check the managed account, then execute the command below:
    $ap = New-SPAuthenticationProvider
    New-SPWebApplication -Name "Contoso Internet Site" -Port 2014 -ApplicationPool "ContosoAppPool" -ApplicationPoolAccount (Get-SPManagedAccount "Domain\Administrator")
     -AuthenticationProvider $ap -SecureSocketsLayer
    Regards,
    Rebecca Tu
    TechNet Community Support

  • Error occured when I create Web Application by SharePoint 2013

    SharePoint 2013 can not create Web Application.
    The ULS log contains tons of the below error.
    Does anyone know how to fix those Process errors?
    Process: w3wp.exe (0x0EE4)
    Product: Web Content Management
    Category: Publishing Cache
    Level: Unexpected
    Message: SPReaderWriterLock named [Process Context Lock] held for 1438 milliseconds.
    Call stack:   
     in Microsoft.SharePoint.Utilities.SPReaderWriterLock.SPReaderWriterLockScope.Dispose()   
     in Microsoft.SharePoint.SPProcessContext.Get[T]()
     in Microsoft.SharePoint.Administration.SPConfigurationDatabase.get_Farm()
     in Microsoft.SharePoint.Administration.SPFarm.FindLocal(SPFarm& farm, Boolean& isJoined)
     in Microsoft.SharePoint.Administration.SPServiceApplication.get_Current()
     in Microsoft.SharePoint.SPServiceHostOperations.Configure(ServiceHostBase serviceHost, SPServiceAuthenticationMode authenticationMode)
     in Microsoft.SharePoint.Taxonomy.MetadataWebServiceHostFactory.CreateServiceHost(String constructorString, Uri[] baseAddresses)
     in System.ServiceModel.ServiceHostingEnvironment.HostingManager.CreateService(String normalizedVirtualPath, EventTraceActivity eventTraceActivity)
     in System.ServiceModel.ServiceHostingEnvironment.HostingManager.ActivateService(ServiceActivationInfo serviceActivationInfo, EventTraceActivity eventTraceActivity)
     in System.ServiceModel.ServiceHostingEnvironment.HostingManager.EnsureServiceAvailable(String normalizedVirtualPath, EventTraceActivity eventTraceActivity)
     in System.ServiceModel.ServiceHostingEnvironment.EnsureServiceAvailableFast(String relativeVirtualPath, EventTraceActivity eventTraceActivity)
     in System.ServiceModel.Activation.HostedHttpRequestAsyncResult.HandleRequest()
     in System.ServiceModel.Activation.HostedHttpRequestAsyncResult.BeginRequest()
     in System.ServiceModel.Activation.HostedHttpRequestAsyncResult.OnBeginRequest(Object state)
     in System.Runtime.IOThreadScheduler.ScheduledOverlapped.IOCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)
     in System.Runtime.Fx.IOCompletionThunk.UnhandledExceptionFrame(UInt32 error, UInt32 bytesRead, NativeOverlapped* nativeOverlapped)
     in System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)       

    Hi RuiHigashiyama,
    Do you find a solution for this issue?
    If yes, please share the solution, it will be beneficial to others in this forum who meet the same issue in the future.
    Best Regrads,
    Wendy
    Wendy Li
    TechNet Community Support

  • Working with excel files in C#, in a web farm

    I am creating a excel file uploader that after the upload, searches for specific columns, saves data to SQL Server, then gets rid of the excel file.
    I will be accepting .xls & xlsx file types.  The internal file structure should be all fairly standard because this is an internal company app.  So for example, the sheet with the data I am searching for may not always be the first in the book,
    but it will always have the same name.
    From the research I have done, it seems I can use the Interop library or OpenXML.  I am leaning towards interop.  Because we are on a web farm, I think it would be best to not save the file, just work with it in memory. Would this be a concern
    if the files are only only around 50kb? I am only expecting 100 uploads a month.
    If it is preferred or required I save the file before pulling the data out, should I save it to the application directory on the web server and expect it to be ok because I am saving/processing/deleting in one request? Or is there a better solution?  I
    thought of saving to our file share but that opens a whole new bucket of worms because of having to send credentials with the file when saving.
    Simon.

    Hi Simon,
    Open XML SDK can only manipulate Office 2007 and above versions. Since your web form accepts Excel 2003 file, it's not a good choice. But if you want to use the PIA(Primary Interop Assembly) to automate the excel files, it's also not recommened. Neither
    of these two options are suitable in your case, you need to use some 3rd-party library to help you, as recommened in this Microsoft KB article.
    http://support.microsoft.com/kb/257757/en-au
    If your business requires the server-side creation of the Office 97,   Office 2000, Office XP, and Office
    2003 binary file formats, third-party   vendors offer components that can help you. Microsoft does not provide any   such components, so you will need to either build a solution yourself or   purchase one from a third-party vendor. Many different
    third-party products   are available. You should investigate each solution to best match the vendor   to your business needs.If you want to build your own solution that edits the   Office 97, Office 2000, Office XP, and Office 2003 binary file
    formats   directly, you can obtain the file format specifications for free under the   terms of the Microsoft Open Specification Promise (OSP). No technical support   is available for the documentation or for the products that you create, but
      documentation is available. For more information, visit the following Web   site:
    http://www.microsoft.com/interop/docs/officebinaryformats.mspx
    As far as I know, NPOI is a good choice for you. You can search and try it. But as it's a 3rd-party library, we don't provide support for it. It also provide ability to process the worksheet in the memory.
    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.

  • IIS Web Farm - File Server for Content and Shared Configuration - SOFS?

    We currently have a number of web farms with their content and shared configuration files located on a standalone file server.
    I am looking to utilise the clustered file server role in Windows 2012 to provide improved uptime and load balancing for the configuration and content shares.
    Please could someone provide clarification as to whether SOFS is supported for this scenario?
    There appears to be some conflicting advice in the documentation and across the internet.

    We currently have a number of web farms with their content and shared configuration files located on a standalone file server.
    I am looking to utilise the clustered file server role in Windows 2012 to provide improved uptime and load balancing for the configuration and content shares.
    Please could someone provide clarification as to whether SOFS is supported for this scenario?
    There appears to be some conflicting advice in the documentation and across the internet.
    SoFS is a good choice for a) Hyper-V and b) SQL Server (anything working with a big files like VHDX and MDF). For a bunch of a small files IIS has in a shared directories SoFS is not going to work and it's cleary said in the documentation. See:
    Scale-Out File Server for Application Data Overview
    http://technet.microsoft.com/en-us/library/hh831349.aspx
    Workload: Information worker
    Yes
    Not recommended
    Workload: Hyper-V
    Yes
    Yes
    Workload: Microsoft SQL Server
    Yes
    Yes
    So in your case just an ordinary clustered file servers should be enough. See:
    Create a Clustered File Server
    http://technet.microsoft.com/en-us/library/cc753969.aspx
    Hope this helped :)
    StarWind VSAN [Virtual SAN] clusters Hyper-V without SAS, Fibre Channel, SMB 3.0 or iSCSI, uses Ethernet to mirror internally mounted SATA disks between hosts.

  • How to configure Adobe Content Server in a web farm

    We have a requirement where we would like to configure multiple servers with Adobe Content server and route requests via Network Load Balancer. We need help to configure Adobe Content serves in a web farm. can some one from your team direct us to appropriate documents or provide suggestions to configure Adobe Content server in a web farm.

    Request to provide instructions to configure Adobe Content Server in a web farm. I have installed Adobe Content Server in one of the box and configured all three services
    1) Fulfillment
    2) Packaging
    3) Admin
    We are successfully able to do packaging and fulfill documents. My goal is to add two more servers to handle load on ACS. I had a doubt on how to create and configure certificate files for other two boxes and add them NLB
    Request your help in guiding me to the documents that helps me to complete this configuration.
    Thanks,
    Ravi

  • Not able to create web application using central admin UI

    We are trying to create web application using central admin UI. but its throwing error.
    Then we tried to create it using powershell but it getting too much time(around 3 hrs) to provision web app on wfe.
    We have around 60 application and farm is virtual.
    Please help us on this.
    Thanks in advance.

    I ran a WSSv3 farm with >60 Web Applications, on a 32bit system no less (careful design of IIS Application Pools was required back then). This isn't impossible to do, but you do need to provide the error in the ULS log and the specifications of your
    virtual environment.
    Trevor Seward
    Follow or contact me at...
    &nbsp&nbsp
    This post is my own opinion and does not necessarily reflect the opinion or view of Microsoft, its employees, or other MVPs.

  • What does "Scale out deployment (Web Farms)" mean for SP2013 and SQL 2012 SSRS?

    Dear community,
    in the
    Feature List of Reporting Services 2012, it's written that "Scale out deployment (Web farms)" is not possible for SQL 2012 Standard edition. However, does this relate as well to SSRS in SP-integrated mode, or only to native mode?
    In other words: is it possible to deploy SSRS using SQL 2012 STANDARD on more than one server in a SP2013 farm?
    And just to be sure: am I right to assume that in both cases, you can create multiple SSRS Svc Applications (be they all running on the same server) and assign them to different web applications (through their proxy groups)?
    Cheers,
    C

    Hi CHinz, 
    According to your description, you want to configure scale-out deployment for SQL Server Reporting Services 2012 standard edition. Right?
    As you can see in the msdn liabrary, for SQL Server 2012, scale-out deployment is only supported in Enterprise and Business Intelligence editions. This is related to both native mode and sharepoint integrated mode.
    It's not supported to deploy a SSRS 2012 standard edition instance on more than one server.
    Since scale-out deployment is for different report server instance to share one report server database. You can use different web applications to access the same report in different report server instances.
    If you have any question, please feel free to ask.
    Best Regards,
    Simon Hou

  • Unable to create web app items if Proximity Search is Enabled.

    I am using BC API to create web app items because I am getting the data from a third party website and wanted to save the data into web app by using BC API. I have a web app ( Name: "Map Overview" ) and the proximity search is enabled. When I test my script I got 404 bad request error but if I disabled the Proximity Search the item is created.
    Can someone help me on this?
    Thanks

    Let me know the page you are running the API call on, I'll have a look and see what gives.
    Thanks,
    Mihai

  • Creating webi/crystal report on BEx and retrieving data, an error ocured?

    Hi Experts,
    I have a problem which many couldnt able to provide a better solution and solve it.
    Need your expert solutions.
    Installed SAP BI with BO(R/3) integration kit SP3.
    Created WEBI report on BEx report via Universe. While trying to load/ refresh/ retrieving the data for display it is throwing an error message like the mentioned below.
    Query1: UniverseOnSAPBEx2
    A database error occurred. The Database error text is: The MDX query SELECT { Measures.ZPrice } ON COLUMNS, NON EMPTY CROSSJOIN( ZVNAME.LEVEL00.MEMBERS, ZVID1.LEVEL00.MEMBERS) ON ROWS FROM $ZICTEST failed to execute with the error.
    UNKNOWN error. (WIS 10901)
    Some fields in the Cube/ BEx/ Universe/ WEBI that i have used are ZPrice, ZVendorId, ZVendorName etc.
    Regards

    looks like it could be the same issues as your other post.

  • An error occured while created webi rpt on BEx and displaying data?

    Hi Experts,
    I have a problem which many couldnt able to provide a better solution and solve it.
    Need your expert solutions.
    Installed SAP BI with BO(R/3) integration kit SP3.
    Created WEBI report on BEx report via Universe. While trying to load/ refresh/ retrieving the data for display it is throwing an  error message like the mentioned below.
    Query1: UniverseOnSAPBEx2
    A database error occurred. The Database error text is: The MDX query SELECT { [Measures].[ZPrice] } ON COLUMNS, NON EMPTY CROSSJOIN( [ZVNAME].[LEVEL00].MEMBERS, [ZVID1].[LEVEL00].MEMBERS) ON ROWS FROM [$ZICTEST] failed to execute with the error.
    UNKNOWN error. (WIS 10901)
    Some fields in the Cube/ BEx/ Universe/ WEBI that i have used are ZPrice, ZVendorId, ZVendorName etc.
    Regards

    this looks like an issue with
    "SAP BI and BO(R/3) with integration kit sp3"
    I think there may be a better forum

  • Error while creating webi on BEx query

    Hello,
    I will appreciate your help on this matter.
    I created a BICS connection and published it in the repository successfully. I then logged on to BI launch pad and tried to create webi report on top of BEx query but getting a following error.
    I am not sure what that error is all about , may be something to do with Java. I would appreciate if you advise your help on this.
    Regards.
    ==============================================================================
    HERE IS AN ERROR MESSAGE:
    java.util.concurrent.ExecutionException: com.google.protobuf.UninitializedMessageException: Message missing required fields: bytesValue
         at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
         at java.util.concurrent.FutureTask.get(Unknown Source)
         at javax.swing.SwingWorker.get(Unknown Source)
         at com.sap.webi.ui.dialog.bex.OpenBexPanel.endFetchNode(OpenBexPanel.java:801)
         at com.sap.webi.ui.dialog.bex.OpenBexPanel.propertyChange(OpenBexPanel.java:1009)
         at java.beans.PropertyChangeSupport.firePropertyChange(Unknown Source)
         at javax.swing.SwingWorker$SwingWorkerPropertyChangeSupport.firePropertyChange(Unknown Source)
         at javax.swing.SwingWorker$SwingWorkerPropertyChangeSupport$1.run(Unknown Source)
         at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(Unknown Source)
         at sun.swing.AccumulativeRunnable.run(Unknown Source)
         at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(Unknown Source)
         at javax.swing.Timer.fireActionPerformed(Unknown Source)
         at javax.swing.Timer$DoPostEvent.run(Unknown Source)
         at java.awt.event.InvocationEvent.dispatch(Unknown Source)
         at java.awt.EventQueue.dispatchEvent(Unknown Source)
         at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
         at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
         at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
         at java.awt.Dialog$1.run(Unknown Source)
         at java.awt.Dialog$3.run(Unknown Source)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.awt.Dialog.show(Unknown Source)
         at com.jidesoft.dialog.StandardDialog.show(Unknown Source)
         at java.awt.Component.show(Unknown Source)
         at java.awt.Component.setVisible(Unknown Source)
         at java.awt.Window.setVisible(Unknown Source)
         at java.awt.Dialog.setVisible(Unknown Source)
         at com.sap.webi.toolkit.ui.dialog.GenericDialog.setVisible(GenericDialog.java:116)
         at com.sap.webi.ui.dialog.bex.OpenBexDialog.setVisible(OpenBexDialog.java:94)
         at com.sap.webi.ui.data.BexQueryDataSourceProvider.createDataSourceInfo(BexQueryDataSourceProvider.java:85)
         at com.sap.webi.ui.context.managers.DataManager.createDataSourceInfo(DataManager.java:277)
         at com.sap.webi.ui.tasks.workflows.CreateDataSourceInfoUITask.doneProcess(CreateDataSourceInfoUITask.java:127)
         at com.sap.webi.toolkit.ui.tasks.WebITask.done(WebITask.java:123)
         at javax.swing.SwingWorker$5.run(Unknown Source)
         at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.run(Unknown Source)
         at sun.swing.AccumulativeRunnable.run(Unknown Source)
         at javax.swing.SwingWorker$DoSubmitAccumulativeRunnable.actionPerformed(Unknown Source)
         at javax.swing.Timer.fireActionPerformed(Unknown Source)
         at javax.swing.Timer$DoPostEvent.run(Unknown Source)
         at java.awt.event.InvocationEvent.dispatch(Unknown Source)
         at java.awt.EventQueue.dispatchEvent(Unknown Source)
         at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
         at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
         at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
         at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
         at java.awt.EventDispatchThread.run(Unknown Source)
    Caused by: com.google.protobuf.UninitializedMessageException: Message missing required fields: bytesValue
         at com.google.protobuf.AbstractMessage$Builder.newUninitializedMessageException(AbstractMessage.java:531)
         at com.sap.sl.olap.sapbw.protobuf.generated.SapbwService$msgBytesValue$Builder.build(SapbwService.java:567)
         at com.sap.sl.sdk.olap.sapbw.service.SapBwBrowsingServiceImpl.processDoIt(SapBwBrowsingServiceImpl.java:299)
         at com.sap.sl.sdk.olap.sapbw.service.SapBwBrowsingServiceImpl.processInvocation(SapBwBrowsingServiceImpl.java:246)
         at com.sap.sl.sdk.olap.sapbw.service.SapBwBrowsingServiceImpl.processOpenSession(SapBwBrowsingServiceImpl.java:229)
         at com.sap.sl.sdk.olap.sapbw.service.SapBwBrowsingServiceImpl.openSession(SapBwBrowsingServiceImpl.java:59)
         at com.sap.webi.ui.dialog.bex.ExpandRepositoryItemWorker.getBrowsingSession(ExpandRepositoryItemWorker.java:63)
         at com.sap.webi.ui.dialog.bex.ExpandRepositoryItemWorker.doInBackground(ExpandRepositoryItemWorker.java:40)
         at com.sap.webi.ui.dialog.bex.ExpandRepositoryItemWorker.doInBackground(ExpandRepositoryItemWorker.java:15)
         at javax.swing.SwingWorker$1.call(Unknown Source)
         at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
         at java.util.concurrent.FutureTask.run(Unknown Source)
         at javax.swing.SwingWorker.run(Unknown Source)
         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
         at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
         at java.lang.Thread.run(Unknown Source)

    Henry,
    Thanks for yor detailed answer, I am looking into it and working with an admin people to resolve this issue. will post here if able to solve it.
    In the meanwhile I am getting another similar kind of error "WHILE CREATING WEBI ON TOP OF UNIVERSE" and wondering if both these error are of similar nature, Will appreciate your help and advice on this.
    Here is an error and its details:
    ========================
    [[error.RepositoryException] 0] <RepositoryImpl.getInternalResourceID() : can't find  InfoObject of cuid M06604sAAW5bAJsAeAAAVVgAAgqWJIcAAAA>,<com.businessobjects.mds.repository.exceptions.RepositoryException: [[error.RepositoryException] 0] <RepositoryImpl.getInternalResourceID(): can't find  InfoObject of cuid M06604sAAW5bAJsAeAAAVVgAAgqWJIcAAAA>> (WIS 00000)
    DETAIL:
    ==========
    com.businessobjects.sdk.core.server.CommunicationException$UnexpectedServerException: [[error.RepositoryException] 0] <RepositoryImpl.getInternalResourceID() : can't find  InfoObject of cuid M06604sAAW5bAJsAeAAAVVgAAgqWJIcAAAA>,<com.businessobjects.mds.repository.exceptions.RepositoryException: [[error.RepositoryException] 0] <RepositoryImpl.getInternalResourceID(): can't find  InfoObject of cuid M06604sAAW5bAJsAeAAAVVgAAgqWJIcAAAA>>
         at com.businessobjects.sdk.core.exception.ExceptionBuilder.make(ExceptionBuilder.java:144)
         at com.businessobjects.sdk.core.exception.ExceptionBuilder.make(ExceptionBuilder.java:101)
         at com.businessobjects.sdk.core.server.common.CommonRequestHandler.afterProcessing(CommonRequestHandler.java:127)
         at com.businessobjects.sdk.core.server.internal.AbstractServer.processIt(AbstractServer.java:178)
         at com.businessobjects.sdk.core.server.internal.AbstractServer.process(AbstractServer.java:133)
         at com.businessobjects.sdk.core.server.internal.InstanceServer.process(InstanceServer.java:94)
         at com.sap.sl.sdk.services.util.ServerRequestProcessor.processServerRequest(ServerRequestProcessor.java:49)
         at com.sap.sl.sdk.datasource.strategy.BuiltInDataSourceStrategyImpl.addDataProvider(BuiltInDataSourceStrategyImpl.java:100)
         at com.sap.sl.sdk.workspace.service.WorkspaceServiceImpl.addDataProvider(WorkspaceServiceImpl.java:77)
         at com.sap.sl.sdk.workspace.service.WorkspaceServiceImpl.addDataProvider(WorkspaceServiceImpl.java:60)
         at com.sap.webi.ui.context.managers.DataManager.addDataProviderFromDataSourceInfo(DataManager.java:395)
         at com.sap.webi.ui.tasks.workflows.AddDataProviderUITask.doIt(AddDataProviderUITask.java:106)
         at com.sap.webi.ui.tasks.workflows.AddDataProviderUITask.doIt(AddDataProviderUITask.java:19)
         at com.sap.webi.toolkit.ui.tasks.WebITask.doInBackground(WebITask.java:113)
         at javax.swing.SwingWorker$1.call(Unknown Source)
         at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
         at java.util.concurrent.FutureTask.run(Unknown Source)
         at javax.swing.SwingWorker.run(Unknown Source)
         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
         at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
         at java.lang.Thread.run(Unknown Source)
    Caused by: com.businessobjects.sdk.core.server.ServerException: [[error.RepositoryException] 0] <RepositoryImpl.getInternalResourceID() : can't find  InfoObject of cuid M06604sAAW5bAJsAeAAAVVgAAgqWJIcAAAA>,<com.businessobjects.mds.repository.exceptions.RepositoryException: [[error.RepositoryException] 0] <RepositoryImpl.getInternalResourceID(): can't find  InfoObject of cuid M06604sAAW5bAJsAeAAAVVgAAgqWJIcAAAA>>
         at com.businessobjects.sdk.core.server.common.CommonRequestHandler.newServerException(CommonRequestHandler.java:260)
         at com.businessobjects.sdk.core.server.common.CommonRequestHandler.createAllServerExceptions(CommonRequestHandler.java:238)
         at com.businessobjects.sdk.core.server.common.CommonRequestHandler.afterProcessing(CommonRequestHandler.java:121)
         ... 18 more

  • How to create web service for a Java class in SAP NetWeaver Studio

    hi all,
    i am using SAP Netweaver Developer Studio.have created a normal java project and i want to create web service for one of the classes in this project. i used the  Web Service Creation Wizard to create a web service for this class. but it says there's no methods available for VI. all my methods in this class are public, what should i do?

    Hi,
    I guess there are other ways. But this is an easy way, if you find the right wizards.
    Besides this it is good practise to define interface methods so that session bean implement these interface methods, and thus seperate the interface from the implementation.
    In this approach you will need 3 projects:
    An enterprise application project (will contain EJB Module)
    An EJB Module project (will contain session bean)
    A Java project (contains code that implements the session bean methods)
    In my previous post I suggested to use a J2EE web mudule project. This was a mistake, it should be EJB module.
    But it should be possible to do it in another way. It is up to you.
    Good luck, Roelof

  • Running version of Crystal Reports bunded in MS Visual Studio on web farm

    Hello,
    I did a search before posting this and could not find where someone had posted the question previously, but I apologize in advance if it is redundant to something already asked and answered.
    I am part of a sysadmin organization, and some of the developers we host on our servers came to us asking to put the free version of the Crystal Reports DLL that comes bundled  with Visual Studio on our IIS web farm servers. 
    We looked at the doco on the MS site regarding this, and in the licensing section we found reference to, as best we can interpret it, not using the free bundled version in a web farm to try to overcome the default 5 user limit.  At least that is our understanding of the text we saw at MS' site. 
    MS refers support questions to Business Objects, thus I am posting this question to find out if it is legitimate or not to use the free Crystal Reports object our developers got from MS on a multiple server IIS web farm. 
    Basically, we want to stay legitimate as far as software on our servers.
    Secondly, as we understand the doco, there is only web forum support for the free tool, so if our developers have a production issue and come to us, our only recourse will be to post a question here?
    Thank you in advance for your answers and clarification.   Have  a great day!

    Hello John,
    I found this bundled Crystal Reports licensing link on MSDN - [Licensing and support for Crystal Reports for Visual Studio|http://support.microsoft.com/kb/317789]. As you'll see, this kbase article says that the bundle editions of Crystal Reports are not licensed for use with web farms.
    If you have other support issues and you can not find answers on these forums you can purchase a support contract or an individual support case. You can purchase a single case from the [Online Store|http://store.businessobjects.com/store/bobjamer/DisplayProductByTypePage&parentCategoryID=&categoryID=11522300]. Or in the US you can call the Sales team at 1-800-877-2340, Option 2. They can assist with support contract questions, and I believe they can assist with single case purchase questions.
    Sincerely,
    Dan Kelleher

Maybe you are looking for