You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@struts.apache.org by "John Larsen (JIRA)" <ji...@apache.org> on 2007/10/10 08:32:37 UTC

[jira] Created: (WW-2242) IE7 Reports Mixed Secure and NonSecure Warning with HTTPS if dojo.event.topic.subscribe is used

IE7 Reports Mixed Secure and NonSecure Warning with HTTPS if dojo.event.topic.subscribe is used
-----------------------------------------------------------------------------------------------

                 Key: WW-2242
                 URL: https://issues.apache.org/struts/browse/WW-2242
             Project: Struts 2
          Issue Type: Bug
    Affects Versions: 2.0.9
         Environment: Windows XP, Solaris
            Reporter: John Larsen


When viewing the following page via HTTPS in IE7 the browser raises a secure and nonsecure content warning. As far as I can tell this is different to previous security warning problems reported against dojo.

Apologies for the large amount of HTML, but this problem is strange in that it doesn't occur if (for instance) the nested <div><span> blocks are removed from the top of the page. And I can't seem to narrow the problem down to any one widget.

The content of the ajax actions does not appear to be significant.

A workaround is to avoid using dojo.event.topic.subscribe. 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>MyNetFone Call Listing</title>

    <script type="text/javascript">
        djConfig = {
            baseRelativePath: "/portal/struts/dojo",
            isDebug: false,
            bindEncoding: "UTF-8",
            debugAtAllCosts: false
        };
    </script>

    <script type="text/javascript" src="/portal/struts/dojo/dojo.js"></script>
    <script type="text/javascript" src="/portal/struts/simple/dojoRequire.js"></script>
    <script type="text/javascript" src="/portal/struts/ajax/dojoRequire.js"></script>
    <script type="text/javascript" src="/portal/struts/CommonFunctions.js"></script>
</head>

<body>

<div>
    <div>
        <div>
            <div/>
            <div/>
            <div>            
                <div><span ></span><span></span></div>
                <div><span ></span><span></span></div>
                <div><span ></span><span></span></div>
                <div><span ></span><span></span></div>
                <div><span ></span><span></span></div>
                <div><span ></span><span></span></div>
                <div><span ></span><span></span></div>                
            </div>
        </div>
    </div>


    <div>
        <div>
            <div>
                <div>
                    <span></span>
                    <span></span>
                    <span></span>
                    <span></span>
                </div>
                <div>
                    <span></span>
                    <span></span>
                    <span></span>
                    <span></span>
                </div>
                <div>
                    <span></span>
                    <span></span>
                    <span></span>
                    <span></span>
                </div>
                <div>
                    <div>
                    </div>
                </div>
                <div>
                    <span></span>
                    <span></span>
                    <span></span>
                    <span></span>
                </div>
                <div>
                    <span></span>
                    <span></span>
                    <span></span>
                    <span></span>
                </div>
            </div>
        </div>

        
        <div>
            <div>
                <table>
                    <tr>
                        <td>
                            <div id="DialledCalls" >
                                <span></span>
                                <span></span>
                                <a dojoType="struts:BindAnchor"
                                   href="DialledCalls.action"
                                   targets="tabs_content"
                                   showError="true"
                                   onclick="selectedTab('DialledCalls')">Dialled Numbers</a>
                            </div>
                        </td>
                    </tr>
                </table>
            </div>
            <div id="tabs_content">
                <form name="dateRangeForm" id="dateRangeForm">
                    <input type="hidden" name="callStatus" value="1"/>
                    <input type="hidden" name="callDirection" value="1"/>
                    <input type="hidden" name="cSVFileName" value="Dialled Number"/>
                    <input type="hidden" name="days" id="days"/>
                    <input type="hidden" name="billingPeriod" id="billingPeriod"/>
                    <table>
                        <tr>
                            <td>
                                <a dojoType="struts:BindAnchor"
                                   href="CallListTable.action?days=1&callStatus=1&callDirection=1&cSVFileName=Dialled Number"
                                   targets="callTable"
                                   notifyTopics="/refresh0"
                                   showError="true">Today</a>
                            </td>
                            <td>
                                <a dojoType="struts:BindAnchor"
                                   href="CallListTable.action?billingPeriod=1&callStatus=1&callDirection=1&cSVFileName=Dialled Number"
                                   targets="callTable"
                                   notifyTopics="/refresh1"
                                   showError="true">This Billing Period</a>
                            </td>
                            <td>
                                <a dojoType="struts:BindAnchor"
                                   href="CallListTable.action?billingPeriod=2&callStatus=1&callDirection=1&cSVFileName=Dialled Number"
                                   targets="callTable"
                                   notifyTopics="/refresh2"
                                   showError="true">Previous Billing Period</a>
                            </td>
                            <td>
                                <div dojoType="struts:BindDiv"
                                     executeScripts="true"
                                     formId="dateRangeForm"
                                     href="CallListRefreshDatePicker.action"
                                     listenTopics="/refresh0,/refresh1,/refresh2"
                                     id="date">
                                </div>
                            </td>
                        </tr>
                    </table>
                </form>

                <div dojoType="struts:BindDiv"
                     id="callTable"
                     href="CallListTable.action?days=1&callStatus=1&callDirection=1&cSVFileName=Dialled Number"
                     showError="true">
                </div>

                <script type="text/javascript">
                    function setAll()
                    {
                        //document.getElementById("days").value = null;
                        //document.getElementById("billingPeriod").value = null;
                    }
                    function setDays()
                    {
                        //document.getElementById("days").value = 1;
                        //document.getElementById("billingPeriod").value = null;
                    }

                    function setBillingPeriod1()
                    {
                        //document.getElementById("days").value = null;
                        //document.getElementById("billingPeriod").value = 1;
                    }
                    function setBillingPeriod2()
                    {
                        //document.getElementById("days").value = null;
                        //document.getElementById("billingPeriod").value = 2;
                    }

                    dojo.event.topic.subscribe("/submit", setAll);
                    dojo.event.topic.subscribe("/refresh0", setDays);
                    dojo.event.topic.subscribe("/refresh1", setBillingPeriod1);
                    dojo.event.topic.subscribe("/refresh2", setBillingPeriod2);
                </script>
            </div>
        </div>
    </div>

</div>
</body>
</html>


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (WW-2242) IE7 Reports Mixed Secure and NonSecure Warning with HTTPS if dojo.event.topic.subscribe is used

Posted by "Don Brown (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/struts/browse/WW-2242?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Don Brown resolved WW-2242.
---------------------------

       Resolution: Incomplete
    Fix Version/s:     (was: 2.1.4)

I agree this is an issue, but it seems to be with dojo, and not struts.  If you can think of something we can do to help resolve it in struts, feel free to reopen.

> IE7 Reports Mixed Secure and NonSecure Warning with HTTPS if dojo.event.topic.subscribe is used
> -----------------------------------------------------------------------------------------------
>
>                 Key: WW-2242
>                 URL: https://issues.apache.org/struts/browse/WW-2242
>             Project: Struts 2
>          Issue Type: Bug
>          Components: Plugin - Dojo Tags
>    Affects Versions: 2.0.9
>         Environment: Windows XP, Solaris
>            Reporter: John Larsen
>
> When viewing the following page via HTTPS in IE7 the browser raises a secure and nonsecure content warning. As far as I can tell this is different to previous security warning problems reported against dojo.
> Apologies for the large amount of HTML, but this problem is strange in that it doesn't occur if (for instance) the nested <div><span> blocks are removed from the top of the page. And I can't seem to narrow the problem down to any one widget.
> The content of the ajax actions does not appear to be significant.
> A workaround is to avoid using dojo.event.topic.subscribe. 
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
> <html xmlns="http://www.w3.org/1999/xhtml">
> <head>
>     <title>MyNetFone Call Listing</title>
>     <script type="text/javascript">
>         djConfig = {
>             baseRelativePath: "/portal/struts/dojo",
>             isDebug: false,
>             bindEncoding: "UTF-8",
>             debugAtAllCosts: false
>         };
>     </script>
>     <script type="text/javascript" src="/portal/struts/dojo/dojo.js"></script>
>     <script type="text/javascript" src="/portal/struts/simple/dojoRequire.js"></script>
>     <script type="text/javascript" src="/portal/struts/ajax/dojoRequire.js"></script>
>     <script type="text/javascript" src="/portal/struts/CommonFunctions.js"></script>
> </head>
> <body>
> <div>
>     <div>
>         <div>
>             <div/>
>             <div/>
>             <div>            
>                 <div><span ></span><span></span></div>
>                 <div><span ></span><span></span></div>
>                 <div><span ></span><span></span></div>
>                 <div><span ></span><span></span></div>
>                 <div><span ></span><span></span></div>
>                 <div><span ></span><span></span></div>
>                 <div><span ></span><span></span></div>                
>             </div>
>         </div>
>     </div>
>     <div>
>         <div>
>             <div>
>                 <div>
>                     <span></span>
>                     <span></span>
>                     <span></span>
>                     <span></span>
>                 </div>
>                 <div>
>                     <span></span>
>                     <span></span>
>                     <span></span>
>                     <span></span>
>                 </div>
>                 <div>
>                     <span></span>
>                     <span></span>
>                     <span></span>
>                     <span></span>
>                 </div>
>                 <div>
>                     <div>
>                     </div>
>                 </div>
>                 <div>
>                     <span></span>
>                     <span></span>
>                     <span></span>
>                     <span></span>
>                 </div>
>                 <div>
>                     <span></span>
>                     <span></span>
>                     <span></span>
>                     <span></span>
>                 </div>
>             </div>
>         </div>
>         
>         <div>
>             <div>
>                 <table>
>                     <tr>
>                         <td>
>                             <div id="DialledCalls" >
>                                 <span></span>
>                                 <span></span>
>                                 <a dojoType="struts:BindAnchor"
>                                    href="DialledCalls.action"
>                                    targets="tabs_content"
>                                    showError="true"
>                                    onclick="selectedTab('DialledCalls')">Dialled Numbers</a>
>                             </div>
>                         </td>
>                     </tr>
>                 </table>
>             </div>
>             <div id="tabs_content">
>                 <form name="dateRangeForm" id="dateRangeForm">
>                     <input type="hidden" name="callStatus" value="1"/>
>                     <input type="hidden" name="callDirection" value="1"/>
>                     <input type="hidden" name="cSVFileName" value="Dialled Number"/>
>                     <input type="hidden" name="days" id="days"/>
>                     <input type="hidden" name="billingPeriod" id="billingPeriod"/>
>                     <table>
>                         <tr>
>                             <td>
>                                 <a dojoType="struts:BindAnchor"
>                                    href="CallListTable.action?days=1&callStatus=1&callDirection=1&cSVFileName=Dialled Number"
>                                    targets="callTable"
>                                    notifyTopics="/refresh0"
>                                    showError="true">Today</a>
>                             </td>
>                             <td>
>                                 <a dojoType="struts:BindAnchor"
>                                    href="CallListTable.action?billingPeriod=1&callStatus=1&callDirection=1&cSVFileName=Dialled Number"
>                                    targets="callTable"
>                                    notifyTopics="/refresh1"
>                                    showError="true">This Billing Period</a>
>                             </td>
>                             <td>
>                                 <a dojoType="struts:BindAnchor"
>                                    href="CallListTable.action?billingPeriod=2&callStatus=1&callDirection=1&cSVFileName=Dialled Number"
>                                    targets="callTable"
>                                    notifyTopics="/refresh2"
>                                    showError="true">Previous Billing Period</a>
>                             </td>
>                             <td>
>                                 <div dojoType="struts:BindDiv"
>                                      executeScripts="true"
>                                      formId="dateRangeForm"
>                                      href="CallListRefreshDatePicker.action"
>                                      listenTopics="/refresh0,/refresh1,/refresh2"
>                                      id="date">
>                                 </div>
>                             </td>
>                         </tr>
>                     </table>
>                 </form>
>                 <div dojoType="struts:BindDiv"
>                      id="callTable"
>                      href="CallListTable.action?days=1&callStatus=1&callDirection=1&cSVFileName=Dialled Number"
>                      showError="true">
>                 </div>
>                 <script type="text/javascript">
>                     function setAll()
>                     {
>                         //document.getElementById("days").value = null;
>                         //document.getElementById("billingPeriod").value = null;
>                     }
>                     function setDays()
>                     {
>                         //document.getElementById("days").value = 1;
>                         //document.getElementById("billingPeriod").value = null;
>                     }
>                     function setBillingPeriod1()
>                     {
>                         //document.getElementById("days").value = null;
>                         //document.getElementById("billingPeriod").value = 1;
>                     }
>                     function setBillingPeriod2()
>                     {
>                         //document.getElementById("days").value = null;
>                         //document.getElementById("billingPeriod").value = 2;
>                     }
>                     dojo.event.topic.subscribe("/submit", setAll);
>                     dojo.event.topic.subscribe("/refresh0", setDays);
>                     dojo.event.topic.subscribe("/refresh1", setBillingPeriod1);
>                     dojo.event.topic.subscribe("/refresh2", setBillingPeriod2);
>                 </script>
>             </div>
>         </div>
>     </div>
> </div>
> </body>
> </html>

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.