Проблема с сессией в cxml Punchout в Struts2 Java - PullRequest
0 голосов
/ 24 мая 2011

Мы создали сайт поставщика punchout (cXML Punchout), который интегрируется с ariba. Он работает нормально при попытке в Google Chrome со средой кадров, но продолжает терять свой сеанс в IE для той же среды кадров. Когда мы передаем JsessionID с URL, он работал только для стартовой страницы. Если мы перемещаемся по другим ссылкам, он теряет сессию. Это заняло у нас страницу входа, хотя JsessionId передается для этих навигационных ссылок.

Этот сайт был построен в рамках работы JAVA Struts2 Frame. Мы используем сервер Jboss V 5.1 и Apache.

Как сохранить сеанс в течение всего процесса выписки?

1 Ответ

0 голосов
/ 26 мая 2011

Проблема сеанса в punchout решается с помощью политики P3P в Apache. В IE блокировались сторонние файлы cookie, чтобы их можно было разблокировать браузером, необходимо настроить их на веб-сервере и добавить в заголовок страницы.

setHeader в конфигурационном файле apache. ===>

Header set P3P "policyref=\"example.com/w3c/p3p.xml\", CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\""

также вы можете разместить setHeader или добавить код заголовка на главной странице вашего проекта (необязательно)

перед этим создайте файл P3P.xml (используя приведенный ниже пример или вы можете использовать инструмент генератора) и разверните его.

Образец P3P.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<!-- Generated by http://www.webentrust.com on 05/25/2011 -->
<META xmlns="http://www.w3.org/2002/01/P3Pv1">

    <POLICY-REFERENCES>
        <POLICY-REF about="#Policy">
            <INCLUDE>/*</INCLUDE>
        </POLICY-REF>
    </POLICY-REFERENCES>

    <POLICIES xmlns="http://www.w3.org/2002/01/P3Pv1">
        <EXPIRY max-age="604800"/>
        <POLICY name="Policy" discuri="http://www.example.com/privacy.html" opturi="http://www.example.com/contact.html">
            <ENTITY>
                <DATA-GROUP>
                    <DATA ref="#business.name">example.com</DATA>
                    <DATA ref="#business.contact-info.online.email">privacy@example.com</DATA>
                </DATA-GROUP>
            </ENTITY>
            <ACCESS>
                <all/>
            </ACCESS>
            <DISPUTES-GROUP>
                <DISPUTES resolution-type="service" short-description="Privacy Disputes" service="http://example.com/contact.html">
                    <REMEDIES>
                        <CORRECT/>
                    </REMEDIES>
                    <LONG-DESCRIPTION>We will correct any privacy issues.</LONG-DESCRIPTION>
                </DISPUTES>
                <DISPUTES resolution-type="independent" short-description="Web Entrust" service="http://www.webentrust.com/sites/example.com.html">
                    <REMEDIES>
                        <CORRECT/>
                    </REMEDIES>
                    <LONG-DESCRIPTION>Web Entrust provides several active seals to represent increased trust, privacy and security. Public reviews provide accountability through an open review policy.</LONG-DESCRIPTION>
                    <IMG alt="Web Entrust Site Seals" src="http://www.webentrust.com/seals/trusted/example.com.png"/>
                </DISPUTES>
            </DISPUTES-GROUP>
            <STATEMENT>
                <CONSEQUENCE>Web server logs are maintained for this web-site.</CONSEQUENCE>
                <EXTENSION optional="yes">
                    <STATEMENT-GROUP name="Logging" xmlns="http://www.w3.org/2006/01/P3Pv11"/>
                </EXTENSION>
                <PURPOSE>
                    <current/>
                    <admin/>
                    <develop/>
                    <pseudo-analysis/>
                    <pseudo-decision/>
                    <tailoring/>
                </PURPOSE>
                <RECIPIENT>
                    <ours/>
                </RECIPIENT>
                <RETENTION>
                    <business-practices/>
                </RETENTION>
                <DATA-GROUP>
                    <DATA ref="#dynamic.clickstream"></DATA>
                    <DATA ref="#dynamic.clientevents"></DATA>
                    <DATA ref="#dynamic.http"></DATA>
                    <DATA ref="#dynamic.searchtext"></DATA>
                </DATA-GROUP>
            </STATEMENT>
        </POLICY>
    </POLICIES>
</META>

для более подробной информации:

  1. http://www.p3pwriter.com
  2. Доступ к доменным куки-файлам в iFrame в Internet Explorer internet-explorer
  3. https://stackoverflow.com/users/13002/sleep-deprivation-ninja
  4. http://msdn.microsoft.com/en-us/library/ms537343.aspx
  5. Cookie заблокирован / не сохранен в IFRAME в Internet Explorer

Для проверки XML-файла с политикой конфиденциальности:

1. http://www.w3.org/P3P/validator.html

...