Binding troubleshooting

Hi!
I've been struggling with a bit of binding code - I'm making tabs, and I'm trying to get the content to change when a different tab is selected. The tab headers change so far, but the tab content doesn't.
When a tab header is clicked on, the tab calls the tabpanel's tabActivator method and passes itself to the function.
Here's the TabPanel class, I'm trying to bind the tab content in the create function.
* tabPanel.fx
* Created on Sep 28, 2009, 4:07:02 PM
package tabs;
import javafx.scene.CustomNode;
import javafx.scene.Group;
import javafx.scene.Node;
import javafx.scene.layout.HBox;
import javafx.scene.text.Text;
import javafx.scene.text.Font;
import javafx.scene.shape.Rectangle;
import javafx.scene.paint.Color;
public class TabPanel extends CustomNode {
    var activeTab : Tab;
    var width = 0;
    var height = 200;
    var tabs:Tab[] = [];
    public function addTab(tab:Tab, active:Boolean, tabName:String):Void{
        tab.textForTab = Text {
                font : Font {
                    size:14
                x: 25, y: 25
                content: tabName
        insert tab into tabs;
        tab.setTabPanel(this);
        if(active){
            activeTab = tab;
            tab.activate();
       width = width + tab.getTabWidth();
     function getContent():Node{
        var content : Node;
        if(activeTab != null){
            content = activeTab.content;
        return content;
    /*called when the tab's header is clicked on*/
    public function tabActivator(tab : Tab):Void{
        activeTab.inactivate();
        tab.activate();
        activeTab = tab;
    public function getWidth ():Integer {
        return width+7;
    public function getPanelHeight ():Integer{
        return height-3
    public override function create(): Node {
        return Group {
            content: [
                HBox{
                    content: tabs
                Rectangle {
                        x: 0, y: bind Tab.getTabBorderHeight()
                        width: bind width + 7, height: height
                        fill: Color.BLACK
                Rectangle {
                         x: 1, y: bind Tab.getTabBorderHeight()+1
                        width: bind width + 7-2, height: height-2
                        fill: Color.WHITE
                 Group{
                     content: bind getContent() //trying to bind the tab content
                     translateX:3
                     translateY:bind Tab.getTabBorderHeight()+5
}in the Main class, I'm binding to the TabPanel create() method in the scene object, so that the changes propagate to the scene.
Any ideas about why the tab content isn't binding?

Remarks:
- You have syntax errors, perhaps because you moved getTabBorderHeight out of Tab. Fixed that.
- I think you use binding too much. This is an expensive operation, useful, but to use with care, as it can kill program's performance.
It is needed, eg. when a change must be reflected on display; but can be avoided when an event changes a value: you can often enforce the dependency in the event function itself.
- You shouldn't call create() method of a CustomNode yourself, it is automatically called at node's instantiation.
I tweaked your code until I got it working... Note: I removed some 'public' declarations to conveniently have everything in the same file, you must not remove them of course.
Here is the working code:
var tabHeight = 30;
var tabBorderHeight = bind tabHeight+3;
var tab1 = Tab{
    content:Text {
        font : Font {
            size: 24
        x: 10, y: 30
        content: "Tab 1"
var tab2 = Tab{
    content:Text {
        font : Font {
            size: 24
        x: 10, y: 30
        content: "Tab 2"
var tabPanel = TabPanel{};
println("== Adding tab1");
tabPanel.addTab(tab1, false, 'First');
println("== Adding tab2");
tabPanel.addTab(tab2, true, 'Second');
println("== Done");
tabPanel.tabActivator(tab1);
Stage {
    title: "Application title"
    width: 250
    height: 300
    scene: Scene {
        content: tabPanel
class Tab extends CustomNode {
    var tabWidth = 100;
    var returnedTabWidth:Integer;
    var normalTabWidth = tabWidth;
    var bigTabWidth = tabWidth+20;
    var tabBorderWidth = bind tabWidth+3;
    var active = false;
    var tabPanel: TabPanel;
    var gradInactive = LinearGradient {
        startX : 0.0
        startY : 0.0
        endX : 0.0
        endY : 1.0
        stops: [
            Stop {
                color : Color.web("0xE9E9E9")
                offset: 0.0
            Stop {
                color : Color.web("0xB3B3B3")
                offset: 0.6
    var gradHover =LinearGradient {
        startX : 0.0
        startY : 0.0
        endX : 0.0
        endY : 1.0
        stops: [
            Stop {
                color : Color.web("0x66CCFF")
                offset: 0.0
            Stop {
                color : Color.web("0x55ABD8")
                offset: 0.6
    var gradSelect =LinearGradient {
        startX : 0.0
        startY : 0.0
        endX : 0.0
        endY : 1.0
        stops: [
            Stop {
                color : Color.web("0xF6F6F6")
                offset: 0.0
            Stop {
                color : Color.web("0xE6E6E6")
                offset: 0.6
    public var textForTab : Text;
    var tabBorder = Rectangle {
        x: 0, y: 0
        height: bind tabBorderHeight, width: bind tabBorderWidth
        fill: Color.web("0x585858")
        arcHeight: 10
        arcWidth: 10
    var tab : Rectangle = Rectangle {
        x: 1, y: 1
        height:bind tabBorderHeight, width:bind tabBorderWidth
        fill: gradInactive
        arcHeight: 10
        arcWidth: 10
        onMouseEntered:function(event:MouseEvent):Void{
            if(not active){
                tab.fill = gradHover;
        onMouseExited:function(event:MouseEvent):Void{
            if(tab.fill == gradHover){
                tab.fill = gradInactive
        onMouseClicked:function(event:MouseEvent):Void{
//~             println('tab active is {active}');
//~             println('tab width is now {tabWidth}');
//~             println('tab height is now {tabHeight}');
            if(not  active){
                tabPanel.tabActivator(this);
//~             println('tab active is now {active}');
//~             println('tab width is now {tabWidth}');
//~             println('tab height is now {tabHeight}');
    public-init var content : Node;
    postinit {
//        makeTabGoDown();
//~         println('tab border y is = {tabBorder.y}');
//~         println('tab y is {tab.y}');
    public function makeTabBig():Void{
        tabWidth = bigTabWidth;
//        tabHeight = tabHeight + 10;
    public function makeTabSmall ():Void{
        tabWidth = normalTabWidth;
//        tabHeight = tabHeight - 10;
    public override function create(): Node {
        return Group {
            content: bind [tabBorder, tab, textForTab]
    public function inactivate() : Void {
        active = false;
        tab.fill = gradInactive;
        makeTabSmall();
        println('inactivated');
//        makeTabGoDown();
    public function activate() : Void{
        active = true;
        tab.fill = gradSelect;
        makeTabBig();
        println('activated');
//        makeTabGoUp();
    public function setTabPanel(tabPanel : TabPanel):Void{
        this.tabPanel = tabPanel;
class TabPanel extends CustomNode {
    var activeTab : Tab;
    var width = 0;
    var height = 200;
    var tabs:Tab[] = [];
    var displayedContent: Group;
    public function addTab(tab:Tab, active:Boolean, tabName:String):Void{
        tab.textForTab = Text {
            font : Font {
                size:14
            x: 25, y: 25
            content: tabName
        insert tab into tabs;
        tab.setTabPanel(this);
        if(active){
            activeTab = tab;
            tab.activate();
        println("Adding tab {tabName} of width {tab.tabBorderWidth}");
        width = width + tab.tabBorderWidth;
    /*called when the tab's header is clicked on*/
    public function tabActivator(tab : Tab):Void{
        activeTab.inactivate();
        tab.activate();
        activeTab = tab;
        displayedContent.content = activeTab.content;
        println("Activated tab {activeTab.textForTab.content}");
    public function getWidth ():Integer {
        return width+7;
    public function getPanelHeight ():Integer{
        return height-3
    public override function create(): Node {
        return Group {
            content: [
                HBox{
                    content: bind tabs
                Rectangle {
                    x: 0, y: bind tabBorderHeight
                    width: bind width + 7, height: height
                    fill: Color.BLACK
                Rectangle {
                    x: 1, y: bind tabBorderHeight+1
                    width: bind width + 7-2, height: height-2
                    fill: Color.WHITE
                displayedContent = Group {
                    translateX:3
                    translateY:bind tabBorderHeight+5
}

Similar Messages

  • How do I troubleshoot AD authentication after a SUCCESSFUL bind?

    In the Domain Controller Security Policy on my active directory domain (w2k3), I opened Local Policies -> Security Options and changed "Microsoft network client: Digitally sign communications (if server agrees)" to Enabled, and I changed "Microsoft network server: Digitally sign communications (if client agrees)" to Enabled. I then did GPUPDATE from a cmd prompt on the domain controller and I was able to bind with my 10.4.7 PowerBook.
    But now that I am bound I still cannot authenticate with domain credentials. Yes, in SMB/CIFS I have set the workgroup to be the netbios name of my domain. And the clock is synced with the domain controllers. I have even edited my smb.conf file with the "realm = MY.DOMAIN" and "security = ADS" and "spnego = yes" lines (where, of course, "MY.DOMAIN" = my domain name). But when I get to the login screen and type in my AD username and password, I get the shaking screen. It's like it isn't even trying to authenticate me with the domain.
    The computer account appeared in Active Directory with no problems. I have bound and unbound and rebound, to no avail (but, notably, with no errors in binding at any point).
    I'm not even sure which log will show me the authentication process so I can check for errors.
    Please help...
    PBG4 17" 1.67GHz 2GB 100GB   Mac OS X (10.4.7)  

    Hi Eric!
    Most of your steps for binding are correct, however you don't need to modify your smb.conf file.
    A couple of things that come to mind are:
    1. When attempting to log in you may be using a local user name that is the same as an AD user name. The local user name will always override an AD user name.
    2. Your AD domain may be incorrect. You may be trying to use an incorrect domain such as "subdomain.domain.com" when all you really need is "domain.com". This could still result in a bind but incorrect authentication.
    Also, this may sound simple but have you made sure the Active Directory plugin in the Directory Service application is checkmarked and that your domain is appearing under the Authentication section?
    After binding, you should be able to immediately go into the Terminal application and issue a switch user command using an AD user name ("su shortname") for testing. This will make troubleshooting easier than logging out and logging in again.
    The log your looking for can be found in the Console under /Library/Logs/Directory Service.
    Hope this helps! bill
    1 GHz Powerbook G4   Mac OS X (10.4.7)  

  • Ora-01008 error with bind variable

    Hi,
    We have a test program which have one bind variable on a column which is varchar2(20), in the test program we've passed a 20 character string to the variable. The program returns error in one of the databases but all others are successful. We've checked the column is same in all of them.
    Exception in thread "main" java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1
    ORA-01008: not all variables bound
    Could you please advise how to troubleshoot this issue?
    Regards

    We aren't going to be able to help you if you won't post the database code that is giving the error.
    And now we need the Java code that is constructing the query that you are using.
    Your error is saying there is a second variable that you are not providing a value for.
    And you said
    >
    We have a test program which have one bind variable on a column which is varchar2(20), in the test program we've passed a 20 character string to the variable.
    >
    But you are using a string that is 23 characters long
    "a3g34-b13fd-efaie-f83fk"How does 23 go into 20?

  • Issue Management scenario Troubleshooting dump CX_WDR_ADAPTER_EXCEPTION

    Hi,
    I'm customizing img transaction to configure service desk scenario in a
    Solution Manager SPS15 7.0(SID=SMG), on windows 2003 server/SQl Server
    2005.
    The problem is customizing Issue Management scenario at step "Troubleshooting".
    When I execute this action, I go to smsy transaction->Settings -> Self-Diagnosis
    and an error with this tittle appears:
    Error when processing your request
    What has happened?
    The URL http://solution.grupotec.local:8002/sap/bc/webdynpro/sap/dswp_sd_settings/ was not called due to an error.
    Note
    The following error text was processed in the system SMG : Adapter error in &VIEW_ELEMENT_TYPE& "_08" of view "DSWP_SD_SETTINGS.START": Context binding of property ? cannot be resolved: The Mapping to Node COMPONENTCONTROLLER.1.LAYOUT Has Not Been Completed.
    The error occurred on the application server solution_SMG_02 and in the work process 0 .
    The termination type was: RABAX_STATE
    The ABAP call stack was:
    Method: RAISE_FOR of program CX_WDR_ADAPTER_EXCEPTION======CP
    Method: RAISE_BINDING_EXCEPTION of program CL_WDR_VIEW_ELEMENT_ADAPTER===CP
    Method: GET_BOUND_ELEMENT of program CL_WDR_VIEW_ELEMENT_ADAPTER===CP
    Method: GET_ATTRIBUTE_INTERNAL of program CL_WDR_VIEW_ELEMENT_ADAPTER===CP
    Method: IF_WDR_VIEW_ELEMENT_ADAPTER~SET_CONTENT of program /1WDA/L8STANDARD==============CP
    Method: IF_WDR_VIEW_ELEMENT_ADAPTER~SET_CONTENT of program /1WDA/L7STANDARD==============CP
    Method: CONV_VIEW_INTO_VE_ADAPTER_TREE of program CL_WDR_INTERNAL_WINDOW_ADAPTERCP
    Method: SET_CONTENT_BY_WINDOW of program CL_WDR_INTERNAL_WINDOW_ADAPTERCP
    Method: RENDER_WINDOWS of program CL_WDR_CLIENT_SSR=============CP
    Method: IF_WDR_RESPONSE_RENDERER~RENDER_USER_INTERFACE_UPDATES of program CL_WDR_CLIENT_SSR=============CP
    What can I do?
    If the termination type was RABAX_STATE, then you can find more information on the cause of the termination in the system SMG in transaction ST22.
    If the termination type was ABORT_MESSAGE_STATE, then you can find more information on the cause of the termination on the application server solution_SMG_02 in transaction SM21.
    If the termination type was ERROR_MESSAGE_STATE, then you can search for more information in the trace file for the work process 0 in transaction ST11 on the application server solution_SMG_02 . In some situations, you may also need to analyze the trace files of other work processes.
    If you do not yet have a user ID, contact your system administrator.
    Error code: ICF-IE-http -c: 010 -u: SOLMANADM -l: E -s: SMG -i: solution_SMG_02 -w: 0 -d: 20080618 -t: 115252 -v: RABAX_STATE -e: UNCAUGHT_EXCEPTION
    HTTP 500 - Internal Server Error
    Your SAP Internet Communication Framework Team
    This error creates a dump:
    Runtime Errors         UNCAUGHT_EXCEPTION
    Exception              CX_WDR_ADAPTER_EXCEPTION
    Short text
        An exception occurred that was not caught.
    What happened?
        The exception 'CX_WDR_ADAPTER_EXCEPTION' was raised, but it was not caught
         anywhere along
        the call hierarchy.
        Since exceptions represent error situations and this error was not
        adequately responded to, the running ABAP program
         'CX_WDR_ADAPTER_EXCEPTION======CP' has to be
        terminated.
    Error analysis
        An exception occurred which is explained in detail below.
        The exception, which is assigned to class 'CX_WDR_ADAPTER_EXCEPTION', was not
         caught and
        therefore caused a runtime error.
        The reason for the exception is:
        Adapter error in &VIEW_ELEMENT_TYPE& "_08" of view "DSWP_SD_SETTINGS.START":
        Context binding of property ? cannot be resolved: The Mapping to Node
        COMPONENTCONTROLLER.1.LAYOUT Has Not Been Completed.
        The occurrence of the exception is closely related to the occurrence of
        a previous exception "CX_WD_CONTEXT", which was raised in the program
         "CL_WDR_CONTEXT_NODE_MAP=======CP",
        specifically in line 25 of the (include) program
         "CL_WDR_CONTEXT_NODE_MAP=======CM001".
        The cause of the exception was:
        The Mapping to Node COMPONENTCONTROLLER.1.LAYOUT Has Not Been Completed.
    Information on where terminated
        Termination occurred in the ABAP program "CX_WDR_ADAPTER_EXCEPTION======CP" -
         in "RAISE_FOR".
        The main program was "SAPMHTTP ".
        In the source code you have the termination point in line 45
        of the (Include) program "CX_WDR_ADAPTER_EXCEPTION======CM004".
    I've tested in sicf transaction that /sap/bc/webdynpro/sap/dswp_sd_settings/ service (right click->test service), appears a log-on popup I type usr j2ee_admin and pwd, and the same error appears.
    I'm logged with user to configure Solution Manager
    which was SAP_ALL, SAP_NEW profile and a Z_RFC rol with( S_RFC,
    S_RFCACL authorizations object).
    Please could you help me??
    Thanks and Regards
    Raul

    I've resolved this problem with SAP Note:
    1157740 - Self Diagnosis dumps when Settings is accessed from Menu
    Thanks and Regards
    Raul

  • Using Shared Variables and Initialize Front Panel Binding (to PSP)

    Hi,
    I use LV DSC RT 8.2.1
    I have a Vacuum System That includes signals from - Pumps failure, Valves status, Vacuum gauge, start Pump ...
    Each signal is read by a FieldPoint. 
    All the relevant FieldPoint Channels are read by the Server (a computer in the Ethernet Network) and published to the network in the form of Shared Variables.
    I have a client VI that is reading the Shared Variables published by the Server using Front Panel Binding.
    Problem : 
    Some of the Bindings are in the mode 'Write &Read' and that causes some initialization problems.
    For example - Valve #1 is Open, and then a User start running the Client VI, (the Valve #1 Status mode is 'Write & Read")
                           if in the VI the status of Valve #1 is closed (before running it) then the Valve status is changing to Closed.
    I want the Client VI to first read the Physical status of the instrument and then to change the Value if the User changes it.
    But that's seems to be a problem when using Front Panel Binding... (is it?)
    I know I can Deploy a lvlib in the Client Side and Item Bind to the Shared Variables or Use DataSocket.
    (Is DataSocket is a Reliable method when connecting to Shared Variables? What are the disadvantages when using DataSocket?) 
    What is recommended by those of you that are experienced or by NI ?
    Sincerely Yours,
    Amitai Abramson.

    Amitai Abramson,
    Hello and thanks for using the NI Forums.
    I'm glad that you've read the Using the LabVIEW Shared Variable Tutorial on our website. Check out these other resources:
    Network Variable Technical Overview
    Troubleshooting Network-Published Shared Variables
    Why Do I See Unexpected Value Change Events for Shared Variables Using LabVIEW DSC?
    All You Need to Know About Shared Variables
    Creating a Value Change Event for Shared Variables
    Alternative Method for Using Shared Variables Between Systems in LabVIEW 8.x
    What Is The Difference Between Using Shared Variables And DataSocket VIs To Access OPC Tags?
    The issue that you are seeing by having "Write & Read" bound items on both the server and client side is essentially a race condition, you don't know which one is being read/written at what time. To resolve this issue I would take a look at some of the documents below.
    Using a Local, Global, or Shared Variable in Parallel Loops Can Cause Race Conditions
    Using Local and Global Variables Carefully
    Tutorial: Local Variable, Global Variable, and Race Conditions
    Locking a Shared Resource or Variable in LabVIEW Using Semaphores
    You mentioned not wanting to have two sets of shared variables (one on each side), but this is a great method to resovle this issue, that, or you can develope some sort of hand shaking to prevent these race conditions.
    I would suggest that in the future when using these forums you try to ask only one question per thread and make it more concise. It's hard to tackle multiple questions and such broad questions as "I want to know all the ways that I can connect to Shared Variables, and I want to know the advantages and disadvantages." I suggest this because we want you to get your questions answered and more concise questions will result in quicker and better answers. 
    Message Edited by Ben S on 10-01-2009 06:05 PM
    Ben Sisney
    FlexRIO V&V Engineer
    National Instruments

  • HP Photosmart 6520 - shows offline and has stopped rotating printing for short-edge binding

    I have suddenly had some issues with my HP Photosmart 6520 printer. I use a wireless connection with my Macbook Pro (OSX 10.9.5)
    First problem is that the printer icon in the dock has recently shown to be offline/not connected. The printer would print pages of documents in the computer (Open Office stuff) but would not print material direct from a web browser. Now (a few days later) it showed to be offline and wouldn't print anything.
    I should point out that the printer device list in System Preferences shows two different entries: one is "HP Photosmart series 6520" (listed as offline) - and the second is "Photosmart 6520 series (FDA82D)" (listed as idle).
    The first ("HP Photosmart series 6520") had been ticked as the default printer.  I then ticked "Photosmart 6520 series (FDA82D)" to change the default printer.
    Then I noticed, when I used the Print command for a document, that the printer list in the Print dialogue box showed that it had a tick against the "HP Photosmart series 6520" printer. When I changed this to the ("Photosmart 6520 series (FDA82D)" printer, the machine printed my document. But the next time I opened the print command, the tick was once again next to the "HP Photosmart series 6520" printer.
    The printers listed in the Print dialogue box have small icons to their left. The "HP Photosmart series 6520" has a wavy line inside a circle and the "Photosmart 6520 series (FDA82D)" has an exclamation mark inside a triangle.
    The second problem is that the printer is no longer rotating the second page when I am printing two-sided and choose "short edge binding" in layout. It now prints out exactly the same as when "long edge binding" is selected (default). The result is that the second page is printed upside down in relation to the first page. This problem has never previously occurred.
    So far I have tried paracetamol and scotch but neither seems to solve these problems. Not sure if I should try them together!
    Sorry this is so long-winded - I'm trying to include as much detail as possible to make it all clear from the start.

    Hello lenc48,
    Welcome to the HP Forums.
    I see that you are having a few issues when it comes to printing from your mac as well as some two sided printing issues.
    I do have a some suggestions that we can try in the attempt to troubleshoot this issue.
    First off, please make sure that you have the printer power cable connected directly to a wall outlet and not a power bar/strip. Here is a document that uses a LaserJet printer as an example but it is meant for HP products in general. Please click on the following link that explains the Issues when Connected to an Uninterruptible Power Supply/Power Strip/Surge Protector.
    Please remove the usb cable (if using wireless, disregard this step) from the printer and from the Mac and leave it disconnected until further notice.
    Please click on the first link that will give you instructions on Uninstalling the Printer Software.
    Once the software has been removed, please disable any anti virus protection that you may have on the Mac. 
    The next step we are going to take is downloading the HP Photosmart 6520 e-All-in-One Printer Full Feature Software and Drivers - OS X 10.9 Mavericks.
    The installation will prompt you when to connect the usb cable (You will see a prompt for a wireless connection as well if that is the connection type you would like to use) so please do not connect the cable until prompted to do so.
    If you are still having issues, feel free to write me back or you can contact HP Total care direct.  If you are calling within North America, the number is 1-800-474-6836 and for all other regions, click here: click here.
    Thanks for your time.
    Cheers, 
    Click the “Kudos Thumbs Up" at the bottom of this post to say “Thanks” for helping!
    Please click “Accept as Solution ” if you feel my post solved your issue, it will help others find the solution.
    W a t e r b o y 71
    I work on behalf of HP

  • Binding an XML file into LiveCycle

    Currently we are using a .dat file to populate a .docx file, but we are having issues with layout and formatting and I want to switch it to using a PDF.
    I have found lots of information on adding an XML Data Connection to a PDF, but nothing to do with troubleshooting. I created a simple XML file with three fields and I was able to connect it to a dynamic PDF and then generate the fields into the document. Now when I preview the PDF the values dont fill in, nor when I open it in Reader.
    I have tested this on Designer ES2 and ES3 and Reader X.
    I cant seem to find a way to attach the XML and PDF, but i will include the XML for reference:
    <?xml version="1.0" encoding="UTF-8" ?>
        <draft>
            <number>100040</number>
            <entered>02-18-2015</entered>
            <name>Name</name>
        </draft>

    Hello,
    I believe I spoke too soon, the data now binds when I Preview the PDF in LiveCycle, but when I save it and then open it in Acrobat Pro or Reader, it does not bind the XML data in.
    Any help is appreciated.
    Ian

  • Error consuming Web service - content type text/xml;charset=utf-8 of the response message does not match the content type of the binding

    Hi all,
    We are trying to interact with Documentum server through DFS exposed WCF which communicates through port 9443 and we are provided with documentum issued Public Key certificates. We have successfully imported the certificates in client machine and configured
    the bindings as below in our .Net web application config file.
    <system.serviceModel>
    <bindings>
    <wsHttpBinding>       
    <binding
    name="ObjectServicePortBinding1">
    <security
    mode="Transport">
    <transport
    clientCredentialType="None"
    proxyCredentialType="None"
    realm=""
    />
    <message
    clientCredentialType="Certificate"
    algorithmSuite="Default"
    />
    </security>
    </binding>
    <binding
    name="QueryServicePortBinding">
    <security
    mode="Transport">
    <transport
    clientCredentialType="None"
    proxyCredentialType="None"
    realm=""
    />
    <message
    clientCredentialType="Certificate"
    algorithmSuite="Default"
    />
    </security>
    </binding>
    </wsHttpBinding>
    </bindings>
    Also, we set the message encoding as MTOM and the wcf client object initialization code snippet is as below,
    ObjectServicePortClient
    serviceClient = new
    ObjectServicePortClient(new
    WSHttpBinding("ObjectServicePortBinding1"),
    new
    EndpointAddress(UriUtil.ObjectServiceUri));
    if (serviceClient.Endpoint.Binding
    is
    WSHttpBinding)
       WSHttpBinding
    wsBinding = serviceClient.Endpoint.Binding as
    WSHttpBinding;
    wsBinding.MessageEncoding =
    "MTOM".Equals(transferMode) ?
    WSMessageEncoding.Mtom :
    WSMessageEncoding.Text;
    serviceClient.Endpoint.Behaviors.Add(new
    ServiceContextBehavior(Config.RepositoryName,
    Config.DocumentumUserName,
    Config.DocumentumPassword));
    When we execute the above code, we are getting error message as below,
    Exception: The content type text/xml;charset=utf-8 of the response message does not match the content type of the binding (multipart/related; type="application/xop+xml"). If using a custom encoder, be sure that the IsContentTypeSupported
    method is implemented properly. The first 407 bytes of the response were: '<?xml version="1.0" ?><S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/"><S:Body><S:Fault xmlns:ns4="http://www.w3.org/2003/05/soap-envelope"><faultcode>S:VersionMismatch</faultcode><faultstring>Couldn't
    create SOAP message. Expecting Envelope in namespace http://schemas.xmlsoap.org/soap/envelope/, but got http://www.w3.org/2003/05/soap-envelope </faultstring></S:Fault></S:Body></S:Envelope>'
    Then, we changed the bindings as below
    <system.serviceModel>
    <bindings>
    <wsHttpBinding>       
    <binding
    name="ObjectServicePortBinding1">
    <security
    mode="Transport">
    <transport
    clientCredentialType="Certificate"
    proxyCredentialType="None"
    realm=""
    />
    <message
    clientCredentialType="Certificate"
    algorithmSuite="Default"
    />
    </security>
    </binding>
    <binding
    name="QueryServicePortBinding">
    <security
    mode="Transport">
    <transport
    clientCredentialType="
    Certificate"
    proxyCredentialType="None"
    realm=""
    />
    <message
    clientCredentialType="Certificate"
    algorithmSuite="Default"
    />
    </security>
    </binding>
    </wsHttpBinding>
    </bindings>
    We are getting another error message,
    Exception: The client certificate is not provided. Specify a client certificate in ClientCredentials.
    Any pointers on resolving this issue would be highly helpful.
    Thanks

    Hi Dhanasegaran,
      As per your case, the corresponding details which may guide you to resolve this issue:
    1. First of all, you can try to call the wcf service directly from the browser & check where it will point out the correct location.
    2. In config file ,Set IncludeExceptionDetailInFaults to true to enable exception information to flow to clients for debugging purposes .
    Set this to true only during development to troubleshoot a service like below :
    <serviceBehaviors>
      <behavior name="metadataAndDebugEnabled">
        <serviceDebug
          includeExceptionDetailInFaults="true"   
    />
        <serviceMetadata
          httpGetEnabled="true"
          httpGetUrl=""   
    />
      </behavior>
    </serviceBehaviors>
    3. I suggest you to change that <security mode ="TransportWithMessageCredential"> instead of <security mode ="Transport">
     for more information, refer the following link :
    https://msdn.microsoft.com/en-us/library/aa354508(v=vs.110).aspx

  • [Forum FAQ] Troubleshooting Network File Copy Slowness

    1. Introduction
    The Server Message Block (SMB) Protocol is a network file sharing protocol, and as implemented in Microsoft Windows is known as Microsoft SMB Protocol. The set of message packets that defines a particular version of the protocol is called a dialect. The Common
    Internet File System (CIFS) Protocol is a dialect of SMB. Both SMB and CIFS are also available on VMS, several versions of Unix, and other operating systems.
    Microsoft SMB Protocol and CIFS Protocol Overview
    http://msdn.microsoft.com/en-us/library/windows/desktop/aa365233(v=vs.85).aspx
    Server Message Block overview
    http://technet.microsoft.com/en-us/library/hh831795.aspx
    1.1
    SMB Versions and Negotiated Versions
    - Thanks for the
    Jose Barreto's Blog
    There are several different versions of SMB used by Windows operating systems:
    CIFS – The ancient version of SMB that was part of Microsoft Windows NT 4.0 in 1996. SMB1 supersedes this version.
    SMB 1.0 (or SMB1) – The version used in Windows 2000, Windows XP, Windows Server 2003 and Windows Server 2003 R2
    SMB 2.0 (technically SMB2 version 2.002) – The version used in Windows Vista (SP1 or later) and Windows Server 2008 (or any SP)
    SMB 2.1 ((technically SMB2 version 2.1) – The version used in Windows 7 (or any SP) and Windows Server 2008 R2 (or any SP)
    SMB 3.0 (or SMB3) – The version used in Windows 8 and Windows Server 2012
    SMB 3.02 (or SMB3) – The version used in Windows 8.1 and Windows Server 2012 R2
    Windows NT is no longer supported, so CIFS is definitely out. Windows Server 2003 R2 with a current service pack is under Extended Support, so SMB1 is still around for a little while. SMB 2.x in Windows Server 2008 and Windows Server 2008
    R2 are under Mainstream Support until 2015. You can find the most current information on the
    support lifecycle page for Windows Server. The information is subject to the
    Microsoft Policy Disclaimer and Change Notice.  You can use the support pages to also find support policy information for Windows
    XP, Windows Vista, Windows 7 and Windows 8.
    In Windows 8.1 and Windows Server 2012 R2, we introduced the option to completely disable CIFS/SMB1 support, including the actual removal of the related binaries. While this is not the default configuration, we recommend disabling this older
    version of the protocol in scenarios where it’s not useful, like Hyper-V over SMB. You can find details about this new option in item 7 of this blog post:
    What’s new in SMB PowerShell in Windows Server 2012 R2.
    Negotiated Versions
    Here’s a table to help you understand what version you will end up using, depending on what Windows version is running as the SMB client and what version of Windows is running as the SMB server:
    OS
    Windows 8.1  WS 2012 R2
    Windows 8  WS 2012
    Windows 7  WS 2008 R2
    Windows Vista  WS 2008
    Previous versions
    Windows 8.1 WS 2012 R2
    SMB 3.02
    SMB 3.0
    SMB 2.1
    SMB 2.0
    SMB 1.0
    Windows 8 WS 2012
    SMB 3.0
    SMB 3.0
    SMB 2.1
    SMB 2.0
    SMB 1.0
    Windows 7 WS 2008 R2
    SMB 2.1
    SMB 2.1
    SMB 2.1
    SMB 2.0
    SMB 1.0
    Windows Vista WS 2008
    SMB 2.0
    SMB 2.0
    SMB 2.0
    SMB 2.0
    SMB 1.0
    Previous versions
    SMB 1.0
    SMB 1.0
    SMB 1.0
    SMB 1.0
    SMB 1.0
    * WS = Windows Server
    1.2 Check, Enable and Disable SMB Versions in Windows operating systems
    In Windows 8 or Windows Server 2012 and later, there is a new PowerShell cmdlet that can easily tell you what version of SMB the client has negotiated with the File Server. You simply access a remote file server (or create a new mapping to it) and use Get-SmbConnection.
    To enable and disable SMBv1, SMBv2, and SMBv3 in Windows Vista, Windows Server 2008, Windows 7, Windows Server 2008 R2, Windows 8, and Windows Server 2012, please follow the steps in the article below.
    Warning: We do not recommend that you disable SMBv2 or SMBv3. Disable SMBv2 or SMBv3 only as a temporary troubleshooting measure. Do not leave SMBv2 or SMBv3 disabled.
    http://support.microsoft.com/kb/2696547
    1.3 Features and Capabilities
    - Thanks for the
    Jose Barreto's Blog
    Here’s a very short summary of what changed with each version of SMB:
    From SMB 1.0 to SMB 2.0 - The first major redesign of SMB
    Increased file sharing scalability
    Improved performance
    Request compounding
    Asynchronous operations
    Larger reads/writes
    More secure and robust
    Small command set
    Signing now uses HMAC SHA-256 instead of MD5
    SMB2 durability
    From SMB 2.0 to SMB 2.1
    File leasing improvements
    Large MTU support
    BranchCache
    From SMB 2.1 to SMB 3.0
    Availability
    SMB Transparent Failover
    SMB Witness
    SMB Multichannel
    Performance
    SMB Scale-Out
    SMB Direct (SMB 3.0 over RDMA)
    SMB Multichannel
    Directory Leasing
    BranchCache V2
    Backup
    VSS for Remote File Shares
    Security
    SMB Encryption using AES-CCM (Optional)
    Signing now uses AES-CMAC
    Management
    SMB PowerShell
    Improved Performance Counters
    Improved Eventing
    From SMB 3.0 to SMB 3.02
    Automatic rebalancing of Scale-Out File Server clients
    Improved performance of SMB Direct (SMB over RDMA)
    Support for multiple SMB instances on a Scale-Out File Server
    You can get additional details on the SMB 2.0 improvements listed above at
    http://blogs.technet.com/b/josebda/archive/2008/12/09/smb2-a-complete-redesign-of-the-main-remote-file-protocol-for-windows.aspx
    You can get additional details on the SMB 3.0 improvements listed above at
    http://blogs.technet.com/b/josebda/archive/2012/05/03/updated-links-on-windows-server-2012-file-server-and-smb-3-0.aspx
    You can get additional details on the SMB 3.02 improvements in Windows Server 2012 R2 at
    http://technet.microsoft.com/en-us/library/hh831474.aspx
    1.4 Related Registry Keys
    HKLM\SYSTEM\CurrentControlSet\Services\MrxSmb\Parameters\
    DeferredOpensEnabled – Indicates whether the Redirector can defer opens for certain cases where the file does not really need to be opened, such as for certain delete requests and adjusting file attributes.
    This defaults to true and is stored in the Redirector variable MRxSmbDeferredOpensEnabled.
    OplocksDisabled – Whether the Redirector should not request oplocks, this defaults to false (the Redirector will request oplocks) and is stored in the variable MrxSmbOplocksDisabled.
    CscEnabled – Whether Client Side Caching is enabled. This value defaults to true and stored in MRxSmbIsCscEnabled. It is used to determine whether to execute CSC operations when called. If CSC is enabled,
    several other parameters controlling CSC behavior are checked, such as CscEnabledDCON, CscEnableTransitionByDefault, and CscEnableAutoDial. CSC will be discussed in depth in its own module, so will be only mentioned in this module when it is necessary to understanding
    the operation of the Redirector.
    DisableShadowLoopback – Whether to disable the behavior of the Redirector getting a handle to loopback opens (opens on the same machine) so that it can shortcut the network path to the resource and
    just access local files locally. Shadow opens are enabled by default, and this registry value can be used to turn them off. It is stored in the global Redirector variable RxSmbDisableShadowLoopback.
    IgnoreBindingOrder – Controls whether the Redirector should use the binding order specified in the registry and controlled by the Network Connections UI, or ignore this order when choosing a transport
    provider to provide a connection to the server. By default the Redirector will ignore the binding order and can use any transport. The results of this setting are stored in the variable MRxSmbObeyBindingOrder.
    HKLM\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters\
    Security Signature settings – The RequireSecuritySignature setting is stored in MRxSmbSecuritySignaturesRequired, EnableSecuritySignature in MRxSmbSecuritySignaturesEnabled, RequireExtendedSignature
    in MRxSmbExtendedSignaturesRequired, and EnableExtendedSignature in MRxSmbExtendedSignaturesEnabled. Note that the Extended Security Signatures assume the regular security signatures are enabled, so those settings are adjusted if necessary based on the extended
    settings. If extended signatures are required, regular signatures have to be required.
    EnablePlainTextPassword – Support for using plain text passwords can be turned on using this key. They are disabled by default.
    OffLineFileTimeoutIntervalInSeconds – Used to set the expiration time for timing out an Exchange (discussed later) when the exchange is accessing an offline file. This value defaults to 1000 seconds,
    but can be changed in the registry and is stored in the global Redirector variable OffLineFileTimeoutInterval
    SessTimeout – This is the amount of time the client waits for the server to respond to an outstanding request. The default value is 60 seconds (Windows Vista). When the client does not receive the
    response to a request before the Request Expiration Timer expires, it will reset the connection because the operation is considered blocked. In Windows 8, the request expiration timer for the SMB 2 Negotiate is set to a smaller value, typically under 20 seconds,
    so that if a node of a continuously available (CA) cluster server is not responding, the SMB 3.0 client can expedite failover to the other node.
    ExtendedSessTimeout – Stored in the ExtendedSessTimeoutInterval variable, this value is used to extend the timeout on exchanges for servers that require an extended session timeout as listed in the
    ServersWithExtendedSessTimeout key. These are third party servers that handle SMB sessions with different processes and vary dramatically on the time required to process SMB requests. The default value is 1000 seconds. If the client is running at least Windows
    7 and ExtendedSessTimeout is not configured (By Default), the timeout is extended to four times the value of SessTimeout (4 * SessTimeout).
    MaxNumOfExchangesForPipelineReadWrite – This value is used to determine the maximum number of write exchanges that can be pipelined to a server. The default is 8 and the value is stored in the variable
    MaxNumOfExchangesForPipelineReadWrite.
    Win9xSessionRestriction – This value defaults to false, but is used to impose a restriction on Windows 9x clients that they can only have one active non-NULL session with the server at a time. Also,
    existing session based connections (VNETROOTS) are scavenged immediately, without a timeout to allow them to be reused.
    EnableCachingOnWriteOnlyOpens – This value can cause the Redirector to attempt to open a file that is being opened for write only access in a manner that will enable the Redirector to cache the file
    data. If the open fails, the request will revert back to the original requested access. The value of this parameter defaults to false and is stored in the MRxSmbEnableCachingOnWriteOnlyOpens variable.
    DisableByteRangeLockingOnReadOnlyFiles – This parameter defaults to false, but if set to true will cause level II oplocks to automatically be upgraded to batch oplocks on read-only files opened for
    read only access. It is stored in the variable DisableByteRangeLockingOnReadOnlyFiles.
    EnableDownLevelLogOff – False by default, this value controls whether a Logoff SMB will be sent to down-level servers when a session is being closed. If this is false, and the server has not negotiated
    to the NT SMB dialect or does not support NT Status codes, the logoff will not be sent because we aren’t sure that server will understand the request. The value is stored in MrxSmbEnableDownLevelLogOff.
    HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\
    ResilientTimeout – This timer is started when the transport connection associated with a resilient handle is lost. It controls the amount of time the server keeps a resilient handle active after the
    transport connection to the client is lost. The default value is 300 seconds (Windows 7, Server 2008 R2, 8, Server 2012).
    DurableHandleV2TimeoutInSecond – This timer is started when the transport connection associated with a durable handle is lost. It controls the amount of time the server keeps a durable handle active
    after the transport connection to the client is lost. The default value is 60 seconds (Windows 8, Windows Server 2012). The maximum value is 300 seconds.
    HKLM\SYSTEM\CurrentControlSet\Services\SMBWitness\Parameters\
    KeepAliveInterval – This functionality was introduced for SMB 3.0 in Windows 8 and Windows Server 2012. The witness protocol is used to explicitly notify a client of resource changes that have occurred
    on a highly available cluster server. This enables faster recovery from unplanned failures, so that the client does not need to wait for TCP timeouts. The default value is 20 minutes (Windows 8, Windows Server 2012).
    HKLM\System\CurrentControlSet\Services\SmbDirect\Parameters\
    ConnectTimeoutInMs – Establish a connection and complete negotiation. ConnectTimeoutInMs is the deadline for the remote peer to accept the connection request and complete SMB Direct negotiation. Default
    is 120 seconds (Windows 8).
    AcceptTimeoutInMs – Accept negotiation: The SMB Direct Negotiate request should be received before AcceptTimeoutInMs expires. The servers starts this timer as soon as it accepted the connection. Default
    is 5 seconds (Windows 8).
    IdleConnectionTimeoutInMs – This timer is per-connection. It is the amount of time the connection can be idle without receiving a message from the remote peer. Before the local peer terminates the
    connection, it sends a keep alive request to the remote peer and applies a keep alive timer. Default is Default: 120 seconds (Windows 8).
    KeepaliveResponseTimeoutInMs – This attribute is per-connection. It defines the timeout to wait for the peer response for a keep-alive message on an idle RDMA connection. Default is 5 seconds (Windows
    8).
    CreditGrantTimeoutInMs – This timer is per-connection.  It regulates the amount of time that the local peer waits for the remote peer to grant Send credits before disconnecting the connection.
    This timer is started when the local peer runs out of Send credits. Default is 5 seconds (Windows 8).
    References:
    [MS-SMB]: Server Message Block (SMB) Protocol
    http://msdn.microsoft.com/en-us/library/cc246231.aspx
    [MS-SMB2]: Server Message Block (SMB) Protocol Versions 2 and 3
    http://msdn.microsoft.com/en-us/library/cc246482.aspx
    SMB 2.x and SMB 3.0 Timeouts in Windows
    http://blogs.msdn.com/b/openspecification/archive/2013/03/27/smb-2-x-and-smb-3-0-timeouts-in-windows.aspx

    3. How to Troubleshoot
    3.1 Troubleshooting Decision Tree
    1
    Is the slowness occurring in browsing a network shared folder or   copying a file, or both?
    Browsing, go to 1.1.
    Copying, go to 1.2.
    Both, go to 1.3.
    1.1
    Is the target a DFS path or not?
    Yes, go to 1.1.1.
    No, go to 1.1.2.
    1.1.1
    Is the client visiting the nearest DFS root server and file   server?
    Yes, go to 1.1.1.1.
    No, go to 1.1.1.2.
    1.1.1.1
    Browse the corresponding (Non-DFS) UNC path directly. Do you   still experience the slowness?
    Yes, go to 1.1.1.1.1.
     No,
    go to 1.1.1.1.2.
    1.1.1.1.1
    Issue is the particular file server responds to the share folder   enumeration requests slowly. Most probably it’s
    unrelated to DFS. Follow   1.1.2.
    1.1.1.1.2
    Issue is that client experiences delay when browsing the DFS   path, but no delay is visiting the target file server
    directly. Capture   Network Monitor trace from the client and study if the DFS path is cracked   down.
    1.1.1.2
    Use dfsutil.exe to clear local domain and referral cache. Then   visit the DFS path again and capture Network Monitor
    trace from the client to   study why the client goes to a wrong file server or DFS root server.
    1.1.2
    Not a DFS issue. Issue is the particular file server responds to   the share folder enumeration requests slowly. “Dir”
    the same share folder   from Command Prompt. Is it slow?
    Yes, go to 1.1.2.1
    No, go to 1.1.2.2
    1.1.2.1
    Check the number of subfolders and files in that share folder.   Is the number large?
    Yes, go to 1.1.2.1.1
    No, go to 1.1.2.1.2
    1.1.2.1.1
    Try to “dir” a different share folder on the same file server,   but with less items. Is it still slow or not?
    Yes, go to 1.1.2.1.1.1
    No, go to 1.1.2.1.1.2
    1.1.2.1.1.1
    Probably to be performance issue of the file server. Capture   Network Monitor trace from both sides, plus Performance
    Monitor on the file   server.
    1.1.2.1.1.2
    Probably to be performance issue of the file server,   particularly, of the disk. Capture Network Monitor trace from
    both sides,   plus Performance Monitor on the file server.
    1.1.2.1.2
    Same as 1.1.2.1.1.1. Probably to be performance issue of the   file server. Capture Network Monitor trace from both
    sides, plus Performance   Monitor on the file server.
    1.1.2.2
    Explorer.exe browses the share folder slowly while “dir” does   fast. The issue should lie in the particular SMB traffic
    incurred by   explorer.exe. It's a Shell issue.
    1.2
    Is the target a DFS path or not?
    Yes, go to 1.2.1
    No, go to 1.2.2
    1.2.1
    Is the client downloading/uploading against the nearest file   server?
    Yes, go to 1.2.1.1
    No, go to 1.2.1.2
    1.2.1.1
    Try to download/upload against that file server using the   Non-DFS share path. Still slow?
    Yes, go to 1.2.1.1.1
    No, go to 1.2.1.1.2
    1.2.1.1.1
    Not a DFS issue. Capture Network Monitor trace from both sides   to identify the pattern of the slowness.
    1.2.1.1.2
    This is unlikely to occur because the conclusion is   contradictory to itself. Start from the beginning to double
    check.
    1.2.1.2
    Same situation as 1.1.1.2. Use dfsutil.exe to clear local domain   and referral cache. Then visit the DFS path again
    and capture Network Monitor   trace from the client to study why the client goes to a wrong file server or   DFS root server.
    1.2.2
    Same as 1.2.1.1.1. It's not a DFS issue. Capture Network Monitor   trace from both sides to identify the pattern of
    the slowness.
    1.3
    Follow 1.1 and then 1.2.
    3.2 Troubleshooting Tools
    Network Monitor or Message Analyzer
    Download
    http://www.microsoft.com/en-us/download/details.aspx?id=40308
    Blog
    http://blogs.technet.com/b/messageanalyzer/
    Microsoft Message Analyzer Operating Guide
    http://technet.microsoft.com/en-us/library/jj649776.aspx
    Performance Monitor
    http://technet.microsoft.com/en-us/library/cc749249.aspx
    DiskMon
    http://technet.microsoft.com/en-us/sysinternals/bb896646.aspx
    Process Monitor
    http://technet.microsoft.com/en-us/sysinternals/bb896645

  • Creating pdf from different file formats in binder

    Hi.
    I tried to create a combined pdf file from .docx, .doc, pdf, .xlsx files using drag and drop function in the Adobe XI trial version. I got a 31,000 page pdf document (instead of about 50 pages) in the binder for all the combined files.  Most of the pages were blank. Can anyone give the reason for this. How to overcome the problem? If I don't get satisfactory solution to this, I don't intend to buy the product after the trial period.
    Thank you.

    What do you get if you just print any of the documents to the PDF printer? Never heard of this problem, so trying to troubleshoot is the only way to trace it.

  • Binding WinXP Machines to SMB Domain on Mac OS X Server

    I've got an Xserve running OS X Server 10.5.6 acting as a Primary Domain Controller (PDC) in SMB using the domain name "DOMAIN". I have set up DNS on the Xserve as well with a primary zone for the domain "domain.lcl" and a machine entry for the server "server" with a reverse mapping to it's IP address 192.168.1.10.
    Open Directory is running as a Master and has users in it.
    I am trying to bind my Windows XP boxes to the domain so that they can use the logins/profiles from the Xserve. I go to Control Panel -> System -> Computer Name and click Change. I enter the domain as "DOMAIN" and the computer name as "winxp1".
    However, I end up getting an error message when I attempt the bind. Here's what I get:
    ~~~~~
    The domain name domain might be a NetBIOS domain name. If this is the case, verify that the domain name is properly registered with WINS.
    If you are certain that the name is not a NetBIOS domain name, then the following information can help you troubleshoot your DNS configuration.
    The following error occurred when DNS was queried for the service location (SRV) resource record used to locate a domain controller for domain domain:
    The error was: "DNS name does not exist."
    (error code 0x0000232B RCODENAMEERROR)
    The query was for the SRV record for ldap._tcp.dc.msdcs.domain
    Common causes of this error include the following:
    - The DNS SRV record is not registered in DNS.
    - One or more of the following zones do not include delegation to its child zone:
    domain
    . (the root zone)
    ~~~~~
    I added the appropriate SRV entry in DNS and I still get the same error.
    Any suggestions on how to make this work?
    OR
    Is there an alternative to using Open Directory user logins and roaming profiles on Windows machines other than this method?
    Thanks!

    Yeah, WINS server ended up being the solution. However, I believe WINS is being phased out in favor of DNS, especially in the world of Active Directories, so there must be a way to do this in DNS as well.

  • Improper casting of bind in select list item?

    Hi all,
    In v3.1.2, I have a Select List item called P1_DEPT_FILTER where the LOV is:
    Number of Columns          1
    Display Null                Yes
    Null display value           -- ALL --
    Null return value
    List of values definition     select DNAME, DEPTNO from DEPT order by 1
    In a computation of another item on the same page, I have a SQL Query in the computation that contains a WHERE clause referencing the Select List item:
         AND (:P1_DEPT_FILTER IS NULL OR assigned_belt LIKE :P1_DEPT_FILTER)
    The problem is that sometimes the computation query returns no rows. Using APEX debug and also dumping the session variables shows P1_DEPT_FILTER to contain the expected value based on what I selected, so I created a LOGON TRIGGER on the owner's database for the owner's schema to fire up a SQL Trace with binds. The bind variables for the computation query show "dty=1", which is a (n)varchar2 type, instead of the expected "dty=2".
    My theory is that this improper casting is causing the computation to not work correctly, since running the computation query outside of APEX works perfectly.
    I'm missing something here, but am stuck on where to continue troubleshooting. Thoughts?
    TIA!
    Rich
    Edited by: socpres on Dec 17, 2008 4:02 PM (typo)

    Hey Scott,
    My apologies for not posting the exact SQLin my original post -- I tend toward obfuscation. In any case...
    That computation and it's slight derivatives appear on computations for P3_ID, P3_ID_NEXT, and P3_ID_PREV, as well as the "Get Next or Previous Primary Key Value" process. Since the value returned for the P3_CHAMPION_FILTER Select List is "8" when I attempt to filter, I altered the P3_CHAMPION_FILTER for each of the 4 SQLs similar to this:
    SELECT
        NVL(MIN(ID),0)
    FROM
        vip_project.project_table
    WHERE
        project_document IS NULL
        AND lead_team_charter_date IS NOT NULL
        AND (NVL(:P3_BELT_FILTER,0) = 0 OR assigned_belt = TO_NUMBER(:P3_BELT_FILTER))
    --     AND (NVL(:P3_CHAMPION_FILTER,0) = 0 OR assigned_champion = TO_NUMBER(:P3_CHAMPION_FILTER))
        AND (NVL(:P3_CHAMPION_FILTER,0) = 0 OR assigned_champion = 8)And it works perfectly! Without a filter on Champion, the correct 56 rows meeting the criteria are available for navigation on the form. If I select the item in the P3_CHAMPION_FILTER that corresponds to the value of "8", only the 3 rows for that "champion" column are navigable. Here's what debug says about the P3_CHAMPION_FILTER field when I select the "8" item:
    0.14: ...Session State: Saved Item "P3_BELT_FILTER" New Value="0"
    0.14: ...Session State: Saved Item "P3_CHAMPION_FILTER" New Value="8"
    0.14: ...Session State: Save "P3_ID" - saving same value: "1"
    And the Session State:
    100     3     P3_CHAMPION_FILTER     Select List     8     I
    So, in theory, changing the "TO_NUMBER(:P3_CHAMPION_FILTER)" to "8" should have no effect, but it does. Baffling!
    Thanks!
    Rich

  • DNS requests from Solaris 10 box to Bind/MySQL DNS server fail

    We have some servers running solaris 9 and some running solaris 10. We also have a DNS server setup running BIND with the MySQL backend. When I query the DNS server from our solaris 9 boxes, they always work just fine. However, when I query the DNS server from our solaris 10 boxes, they always fail. Queries to other DNS servers from the Solaris 10 boxes work just fine - they only fail when being sent to this particular DNS server. Here's exactly what I'm doing:
    ON SOLARIS 9 BOX:
    bash-3.00$ nslookup google.com calo-sunset
    Server: calo-sunset
    Address: <IP_OF_DNS_SERVER>#53
    Non-authoritative answer:
    Name: google.com
    Address: 64.233.187.99
    Name: google.com
    Address: 72.14.207.99
    Name: google.com
    Address: 209.85.171.99
    ON SOLARIS 10 BOX:
    bash-2.05$ nslookup google.com calo-sunset
    *** Can't find server name for address <IP_OF_DNS_SERVER>: Non-existent host/domain
    *** Default servers are not available
    In the case of the SOLARIS 10 box, <IP_OF_DNS_SERVER> is correct - it knows the IP address of the DNS server, but apparently it doesn't recognize that it's actually a DNS server.
    I am utterly perplexed by this. It seems to me that a DNS request is a DNS request, regardless of your OS. Clearly something is different from Solaris 9 to Solaris 10 though because the requests fail on all of our solaris 10 boxes, and they succeed on all of our Solaris 9 boxes. Incidentally, dig requests from the Solaris 10 box also fail, where they succeed on the Solaris 9 boxes.
    I don't really know what other information I could offer that might be useful. If you have any information at all about this or ideas on what I might try to troubleshoot/fix it, I'd love to hear it. Thanks in advance.

    First off, I am an idiot. I got this entire post backwards. The fact is that the DNS requests work swimmingly well on our Solaris 10 boxes. They fail on our Solaris 9 boxes. I don't know how I managed to read this post all of these times and not notice that I got that backwards. Nice.
    In any case, I've found the problem. It was non-trivial to me because I am not terribly familiar with the inner-workings of DNS. To those who are, it may seem painfully obvious. To me it certainly was not.
    The problem was that the DNS server (BIND 9 with MySQL backend) did not contain a reverse DNS entry for itself. Apparently this is a big problem for Solaris 9. I got a hint that this might be the cause when I turned on verbose debugging info when I ran nslookup (nslookup -d2). I had to add the PTR record for the DNS server itself. I don't know why Solaris 9 would require that a DNS server contain reverse DNS information about itself, but sure enough it does. As soon as I added that info, the Solaris 9 boxes were able to successfully query the DNS server. Very odd.
    Anyway, I doubt anyone else will come across this problem, but if you do, now you know something that might fix it.
    Edited by: dprater on Oct 7, 2008 8:09 PM

  • ORA-01461: can bind a LONG value only for insert into a LONG Classic Report

    I am trying to create a report but get a ORA-01461: can bind a LONG value only for insert into a LONG column error. I am a fairley new to Apex and my SQL skills are far from expert level. I have 3 groups we will call 'A' 'B' 'C'. 'A' is the best group 'B' is the next best and 'C' is the lowest group. Let say there are 5 people they all want to be in group A but where they are placed is based on their audition score and the users selection.
    Joe score is 50
    Beth 40
    John 30
    Ken 20
    Sally 10
    The user selects that he wants 2 people in group 'A' and 1 in group 'B' and 2 in group C. The SQL needs to rank Joe and Beth in Group A. John in group 'B' and Ken and Sally in group 'C'. The user does this type of selection for about 15 different instrument groups to make up group (band) for 'A', 'B', and 'C'.
    Here is what I have come up with that gives me the error mention above when creating a report but works in SQL developer. There is probably a far better way to write this than what I have. I am open to suggestions. Band 'A' SQL example is for all instruments. SQL's for 'B' and 'C' are just a samples of the whole thing.
    SQL for Band 'A'
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    ( ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Piccolo'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_piccolo from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Flute'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Flute from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Oboe'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Oboe from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'English_Horn'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Englishhorn from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'English_Horn'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Englishhorn from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Clarinet_Eflat'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Clarineteflat from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Clarinet'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Clarinet from festival_years where year = ':P6_YEAR')
    UNION ALL SELECT lname,fname,instrument,total FROM(SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank FROM band_students, festival_records A JOIN festival_records B on a.ID = b.ID where band_students.id = a.ID and a.instrument = 'Clarinet Bass' and a.festival_year = ':P6_YEAR' ORDER BY total, a.ID DESC NULLS LAST) WHERE Stu_Rank <= (select hb_Clarinetbass from festival_years where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Clarinet Contrabass'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Clarinetcontrabass from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Saxophone Alto'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Saxophonealto from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Saxophone Tenor'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Saxophonetenor from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Saxophone Bari'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Saxophonebari from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Bassoon'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Bassoon from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Bassoon Contra'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Bassooncontra from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Horn'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Horn from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Trumpet'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Trumpet from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Trombone'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Trombone from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Trombone Bass'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Trombonebass from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Euphonium'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Trombonebass from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Tuba'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Tuba from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Percussion'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Percussion from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Piano'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Piano from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Violin'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Violin from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Viola'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Viola from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Cello'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Cello from festival_years
    where year = ':P6_YEAR')
    UNION ALL
    SELECT lname,fname,instrument,total
    FROM
    (SELECT lname, fname, a.instrument, a.total, DENSE_RANK() OVER
    (ORDER BY a.total DESC,a.ID NULLS LAST) AS Stu_Rank
    FROM band_students, festival_records A
    JOIN festival_records B on a.ID = b.ID
    where band_students.id = a.ID
    and a.instrument = 'Bass'
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank <= (select hb_Cello from festival_years
    where year = ':P6_YEAR'
    SQL for band 'B'
    SELECT lname,fname,instrument, total
    FROM
    (SELECT lname, fname, instrument, total, RANK() OVER
    ( ORDER BY instrument,total ASC NULLS LAST) AS Stu_Rank
    FROM festival_records, band_students
    where band_students.id = festival_records.id
    and instrument = 'Piccolo'
    and festival_year = '2014'
    ORDER BY instrument, total ASC NULLS LAST)
    WHERE Stu_Rank < (select hb_piccolo from festival_years
    where year = :P6_YEAR)
    SQL for band 'C'
    SELECT lname,fname,instrument, total
    FROM festival_records, band_students
    where band_students.id = festival_records.student_id
    and instrument = 'Piccolo'
    and festival_year = ':P6_YEAR'
    minus
    SELECT lname,fname,instrument, total
    FROM
    (SELECT lname, fname, instrument, total, RANK() OVER
    ( ORDER BY instrument,total DESC NULLS LAST) AS Stu_Rank
    FROM festival_records, band_students
    where band_students.id = festival_records.student_id
    and instrument = 'Piccolo'
    and festival_year = ':P6_YEAR'
    ORDER BY instrument, total DESC NULLS LAST)
    WHERE Stu_Rank < (select hb_piccolo from festival_years
    where year = ':P6_YEAR')
    SQL

    >
    Welcome to the forum: please read the FAQ and forum sticky threads (if you haven't done so already).
    When you have a problem you'll get a faster, more effective response by including as much relevant information as possible upfront. This should include:
    <li>Full APEX version
    <li>Full DB/version/edition/host OS
    <li>Web server architecture (EPG, OHS or APEX listener/host OS)
    <li>Browser(s) and version(s) used
    <li>Theme
    <li>Template(s)
    <li>Region/item type(s)
    With APEX we're also fortunate to have a great resource in apex.oracle.com where we can reproduce and share problems. Reproducing things there is the best way to troubleshoot most issues, especially those relating to layout and visual formatting. If you expect a detailed answer then it's appropriate for you to take on a significant part of the effort by getting as far as possible with an example of the problem on apex.oracle.com before asking for assistance with specific issues, which we can then see at first hand.
    You should also always post code wrapped in <tt>\...\</tt> tags.
    I am trying to create a reportWhen asking a question about "reports" it's firstly essential to differentiate between standard and interactive reports. Which is it?
    but get a ORA-01461: can bind a LONG value only for insert into a LONG column error.Where and when do you get this error? When creating the report? Or running it?
    There's also an obvious bug (repeated many times):
    and a.festival_year = ':P6_YEAR'
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank &lt;= (select hb_piccolo from festival_years
                   where year = ':P6_YEAR')
    ...<tt>':P6_YEAR'</tt> is a literal string, not a bind variable reference. <tt>':P6_YEAR'</tt> seems an unlikely value for <tt>festival_year</tt> and <tt>year</tt> values. It should be:
    and a.festival_year = :P6_YEAR
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank &lt;= (select hb_piccolo from festival_years
                   where year = :P6_YEAR)
    ...or even better:
    and a.festival_year = to_number(:P6_YEAR)
    ORDER BY total, a.ID DESC NULLS LAST)
    WHERE Stu_Rank &lt;= (select hb_piccolo from festival_years
                   where year = to_number(:P6_YEAR))
    ...if the <tt>festival_year</tt> and <tt>year</tt> columns are of type NUMBER. There's a possibility that this bug is in fact the source of your error...
    Furthermore, this is a long piece of SQL. It may be that APEX can't cope with the length. However it's also very repetitive: we see the same SQL pattern repeated many times and UNIONed together. One way to reduce the length of the query would be to replace some (or all) of those repeating patterns. This will not only make the query more APEX-friendly, but it will probably be more efficient and easier to maintain too.
    I recommend that you Re: 2. How do I ask a question on the forums? that will enable others to have a go at this. Reproducing the app on apex.oracle.com and posting guest developer credentials would also be helpful.

  • Troubleshoot ldap-ISR configuration

    Hello
    i am testing ScanSafe features and was setup a ISR (C2900 Software (C2900-UNIVERSALK9-M), Version 15.2(2)T) to use ldap authentication to AD following http://www.cisco.com/en/US/docs/security/web_security/ISR_SS/ISR_ScanSafe_SolutionGuide.pdf.
    Unfortunatelly when user try to access the Internet any credentials i typed in do not work.
    Below is debug ldap all output from the ISR:
    Oct  1 20:28:43.160: LDAP: Received timer event
    Oct  1 20:28:43.160: LDAP: Connection timeout occured. Retrying
    Oct  1 20:28:43.160: LDAP: Opening ldap connection ( 10.1.1.1, 3268 )ldap_open
    ldap_init libldap 4.5 18-FEB-2000
    open_ldap_connection
    ldap_connect_to_host: 10.1.1.1:3268
    Oct  1 20:28:43.160: LDAP: socket 1 - connecting to 10.1.1.1 (3268)
    Oct  1 20:28:43.160: LDAP: socket 1 - connection in progress
    Oct  1 20:28:43.160: LDAP: socket 1 - local address 10.3.206.33 (54052)
    Oct  1 20:28:43.160: LDAP: Connection on socket 1
    Oct  1 20:28:43.160: LDAP: Connection to LDAP server (CDC02.domain.net, 10.19.146.14) attempted
    Oct  1 20:28:43.160: LDAP: Connection state: DOWN => CONNECTING
    Oct  1 20:28:43.176: LDAP: Received socket event
    Oct  1 20:28:43.176: LDAP: Checking the conn status
    Oct  1 20:28:43.176: LDAP: Socket read event socket=1
    Oct  1 20:28:43.176: LDAP: Found socket ctx
    Oct  1 20:28:43.176: LDAP: ldap tcp transport closing on socket 1
    Oct  1 20:28:43.176: LDAP: Protocol received transport down notification
    Oct  1 20:28:43.176: LDAP: Server-CDC02.domain.net connection going down !!!
    Oct  1 20:28:43.176: LDAP: Clearing all ldap transactions
    Oct  1 20:28:43.176: LDAP: Connection state: CONNECTING => DOWN
    Oct  1 20:28:43.176: LDAP: Connection state: DOWN => DOWN
    Oct  1 20:28:43.176: LDAP: Connection timer started for 30 seconds for CDC02.domain.netldap_unbind
    ldap_free_connection lc=0x2CAFBEF0
    ldap_free_connection: actually freed
    Oct  1 20:28:43.180: LDAP: socket 1 - CONN_WAIT->CONN_CLOSE
    Oct  1 20:28:43.180: LDAP: Received socket event
    Oct  1 20:29:13.176: LDAP: Received timer event
    Oct  1 20:29:13.176: LDAP: Connection timeout occured. Retrying
    Oct  1 20:29:13.176: LDAP: Opening ldap connection ( 10.1.1.1, 3268 )ldap_open
    ldap_init libldap 4.5 18-FEB-2000
    open_ldap_connection
    ldap_connect_to_host: 10.1.1.1:3268
    Oct  1 20:29:13.176: LDAP: socket 1 - connecting to 10.19.146.14 (3268)
    Oct  1 20:29:13.176: LDAP: socket 1 - connection in progress
    Oct  1 20:29:13.176: LDAP: socket 1 - local address 10.3.206.33 (48488)
    Oct  1 20:29:13.176: LDAP: Connection on socket 1
    Oct  1 20:29:13.176: LDAP: Connection to LDAP server (CDC02.domain.net, 10.19.146.14) attempted
    Oct  1 20:29:13.176: LDAP: Connection state: DOWN => CONNECTING
    Oct  1 20:29:13.192: LDAP: Received socket event
    Oct  1 20:29:13.192: LDAP: Checking the conn status
    Oct  1 20:29:13.192: LDAP: Socket read event socket=1
    Oct  1 20:29:13.192: LDAP: Found socket ctx
    Oct  1 20:29:13.192: LDAP: ldap tcp transport closing on socket 1
    Oct  1 20:29:13.192: LDAP: Protocol received transport down notification
    Oct  1 20:29:13.192: LDAP: Server-CDC02.domain.net connection going down !!!
    Oct  1 20:29:13.192: LDAP: Clearing all ldap transactions
    Oct  1 20:29:13.192: LDAP: Connection state: CONNECTING => DOWN
    Oct  1 20:29:13.192: LDAP: Connection state: DOWN => DOWN
    Oct  1 20:29:13.192: LDAP: Connection timer started for 30 seconds for CDC02.domain.netldap_unbind
    ldap_free_connection lc=0x2CAFBEF0
    ldap_free_connection: actually freed
    from the router i do have connectivity to AD controller configured in ISR config (ping works) and there is no firewall that will prevent ldap traffic.
    Any good troubleshooting ideas that will help getting this setup running?

    I have a similar problem as well with Scansafe, on a 3945 ISR with IOS 15 (C3900-UNIVERSALK9-M). LDAP binding to the LDAP Server when authenticating any domain user, except for the default Scansafe Bind Root-DN user, is failing. Which I believe could also be your problem, unless, from the logs you presented, it appears as connection to the LDAP Server itself is failing; post your LDAP configuration.
    Try running:
    # sh ldap server all   (to see if any LDAP server exists)
    Try testing the Scansafe AAA LDAP server via:
    # test aaa group new-code
    In my case, testing any user's sAMaccount name, is failing, and it defaults to the default usergroup.
    My config is exactly as the link you posted and I am using NTLM PASSIVE AUTHENTICATION.
    In that PDF, there is this paragraph that describes exactly what is happening to my Scansafe.
    Configuring a Default User Group
    You can configure a default user group to assign to each client when the ISR cannot determine the
    credentials for a user. Define a default user group using the following CLI command:
    [no] user-group default
    The ISR uses the default user group name here to iden
    tify all clients connected to a specific interface on
    the ISR when it cannot determine the user’s credenti
    als. You might want to define a default user group
    so that all traffic redirected to
    the ScanSafe proxy servers are assigned a user group so particular
    ScanSafe policies can be applied a
    ppropriately. For example, you might want to create a default user
    group for guest users on the wireless network.
    Only one user group can be defined per interface.
    Here is what my logs show regarding LDAP BINDING OPERATION, from # debug ldap all:
    -- Testing with jltestuser (this is just any random user, as all users are failing anyway)
    barra-gate#
    barra-gate#
    051646: Aug 23 23:10:34.983 BRST: LDAP: LDAP: Queuing AAA request 0 for processing
    051647: Aug 23 23:10:34.983 BRST: LDAP: Received queue event, new AAA request
    051648: Aug 23 23:10:34.983 BRST: LDAP: LDAP authentication request
    051649: Aug 23 23:10:34.983 BRST: LDAP: Invalid hash index 512, nothing to remove
    051650: Aug 23 23:10:34.983 BRST: LDAP: New LDAP request
    051651: Aug 23 23:10:34.983 BRST: LDAP: Attempting first  next available LDAP server
    051652: Aug 23 23:10:34.983 BRST: LDAP: Got next LDAP server :
    051653: Aug 23 23:10:34.983 BRST: LDAP: First Task: Send bind req
    051654: Aug 23 23:10:34.983 BRST: LDAP: Authentication policy: bind-first
    051655: Aug 23 23:10:34.983 BRST: LDAP: Bind: User-DN=cn=jltestuser,CN=Users,DC=,DC=,DC=com ldap_req_encode
    Doing socket write
    051656: Aug 23 23:10:34.983 BRST: LDAP:  LDAP bind request sent successfully (reqid=92)
    051657: Aug 23 23:10:34.983 BRST: LDAP: Sent transit request to server
    051658: Aug 23 23:10:34.983 BRST: LDAP: LDAP request successfully processed
    051659: Aug 23 23:10:35.539 BRST: LDAP: Received socket event
    051660: Aug 23 23:10:35.539 BRST: LDAP: Process socket event for socket = 0
    051661: Aug 23 23:10:35.539 BRST: LDAP: Conn Status = 4
    051662: Aug 23 23:10:35.539 BRST: LDAP: Non-TLS read event on socket 0
    051663: Aug 23 23:10:35.539 BRST: LDAP: Found socket ctx
    051664: Aug 23 23:10:35.539 BRST: LDAP: Receive event: read=1, errno=11 (Resource temporarily unavailable)
    051665: Aug 23 23:10:35.539 BRST: LDAP: Passing the client ctx=1855243Cldap_result
    wait4msg (timeout 0 sec, 1 usec)
    ldap_select_fd_wait (select)
    ldap_read_activity lc 0x1AADABD8
    Doing socket read
    LDAP-TCP:Bytes read = 110
    ldap_match_request succeeded for msgid 7 h 0
    changing lr 0x11A14BFC to COMPLETE as no continuations
    removing request 0x11A14BFC from list as lm 0x1AAB8494 all 0
    ldap_msgfree
    ldap_msgfree
    051666: Aug 23 23:10:35.539 BRST: LDAP: LDAP Messages to be processed: 1
    051667: Aug 23 23:10:35.539 BRST: LDAP: LDAP Message type: 97
    051668: Aug 23 23:10:35.539 BRST: LDAP: Got ldap transaction context from reqid 92ldap_parse_result
    051669: Aug 23 23:10:35.539 BRST: LDAP: resultCode:    49     (Invalid credentials)
    051670: Aug 23 23:10:35.539 BRST: LDAP: Received Bind Responseldap_parse_result
    ldap_err2string
    051671: Aug 23 23:10:35.539 BRST: LDAP: Ldap Result Msg: FAILED:Invalid credentials, Result code =49
    051672: Aug 23 23:10:35.539 BRST: LDAP: LDAP Bind operation result : failed  <<<<<<<<<<-----------------------LOOK!!!!!
    051673: Aug 23 23:10:35.539 BRST: LDAP: Connection 0 already exist for reuseldap_msgfree
    051674: Aug 23 23:10:35.539 BRST: LDAP: Closing transaction and reporting error to AAA
    051675: Aug 23 23:10:35.539 BRST: LDAP: Transaction context removed from list [ldap reqid=92]
    051676: Aug 23 23:10:35.539 BRST: LDAP: Notifying AAA: REQUEST FAILED
    051677: Aug 23 23:10:35.539 BRST: LDAP: Received socket event
    --- Testing with the scansafe assigned user that binds to the Bind DN. This is the only user that succeeds authentication!!!!
    barra-gate#
    barra-gate#
    barra-gate#
    051684: Aug 23 23:13:57.664 BRST: LDAP: LDAP: Queuing AAA request 0 for processing
    051685: Aug 23 23:13:57.664 BRST: LDAP: Received queue event, new AAA request
    051686: Aug 23 23:13:57.664 BRST: LDAP: LDAP authentication request
    051687: Aug 23 23:13:57.664 BRST: LDAP: Invalid hash index 512, nothing to remove
    051688: Aug 23 23:13:57.664 BRST: LDAP: New LDAP request
    051689: Aug 23 23:13:57.664 BRST: LDAP: Attempting first  next available LDAP server
    051690: Aug 23 23:13:57.664 BRST: LDAP: Got next LDAP server :
    051691: Aug 23 23:13:57.664 BRST: LDAP: First Task: Send bind req
    051692: Aug 23 23:13:57.664 BRST: LDAP: Authentication policy: bind-first
    051693: Aug 23 23:13:57.664 BRST: LDAP: Bind: User-DN=cn=,CN=Users,DC=,,DC=comldap_req_encode
    Doing socket write
    051694: Aug 23 23:13:57.664 BRST: LDAP:  LDAP bind request sent successfully (reqid=93)
    051695: Aug 23 23:13:57.664 BRST: LDAP: Sent transit request to server
    051696: Aug 23 23:13:57.664 BRST: LDAP: LDAP request successfully processed
    051697: Aug 23 23:13:58.164 BRST: LDAP: Received socket event
    051698: Aug 23 23:13:58.164 BRST: LDAP: Process socket event for socket = 0
    051699: Aug 23 23:13:58.164 BRST: LDAP: Conn Status = 4
    051700: Aug 23 23:13:58.164 BRST: LDAP: Non-TLS read event on socket 0
    051701: Aug 23 23:13:58.164 BRST: LDAP: Found socket ctx
    051702: Aug 23 23:13:58.164 BRST: LDAP: Receive event: read=1, errno=11 (Resource temporarily unavailable)
    051703: Aug 23 23:13:58.164 BRST: LDAP: Passing the client ctx=1855243Cldap_result
    wait4msg (timeout 0 sec, 1 usec)
    ldap_select_fd_wait (select)
    ldap_read_activity lc 0x1AADABD8
    Doing socket read
    LDAP-TCP:Bytes read = 22
    ldap_match_request succeeded for msgid 8 h 0
    changing lr 0x11A14BFC to COMPLETE as no continuations
    removing request 0x11A14BFC from list as lm 0x1AAB9D14 all 0
    ldap_msgfree
    ldap_msgfree
    051704: Aug 23 23:13:58.164 BRST: LDAP: LDAP Messages to be processed: 1
    051705: Aug 23 23:13:58.164 BRST: LDAP: LDAP Message type: 97
    051706: Aug 23 23:13:58.164 BRST: LDAP: Got ldap transaction context from reqid 93ldap_parse_result
    051707: Aug 23 23:13:58.164 BRST: LDAP: resultCode:    0     (Success)
    051708: Aug 23 23:13:58.168 BRST: LDAP: Received Bind Responseldap_parse_result
    051709: Aug 23 23:13:58.168 BRST: LDAP: Ldap Result Msg: SUCCESS, Result code =0
    051710: Aug 23 23:13:58.168 BRST: LDAP: LDAP Bind successful for DN:cn=CN=Users,DC=,DC=,DC=com
    Now, what does this problem affect? I cannot enforce the application of filters from the Scansafe site to specific user groups. Users can use the internet under the default usergroup. Everyone defaults to the default filter. I have a filter established for say Purchasing, allowing them extra leeway on what they can view, but the members of that group cannot authenticate, and thus their filter is not applied.
    Application of filters is essential to Scansafe, without them, it defeats the purpose.
    I appreciate all the help I can get on this.

Maybe you are looking for