java.lang.LinkageError: loader constraint violation in interface itable initialization:

714 views
Skip to first unread message

Mark Warner

unread,
Nov 20, 2015, 5:45:25 AM11/20/15
to mockito

I am getting this error when I try to mock JTextField.

java.lang.LinkageError: loader constraint violation in interface itable
    initialization: when resolving method
    "javax.swing.text.JTextComponent$1.dropLocationForPoint(
    Ljavax/swing/text/JTextComponent;Ljava/awt/Point;)Ljavax/
    swing/TransferHandler$DropLocation;" the class loader (instance of
    org/powermock/core/classloader/MockClassLoader) of the current
    class, javax/swing/text/JTextComponent$1, and the class loader
    (instance of <bootloader>) for interface
    sun/swing/SwingAccessor$JTextComponentAccessor have different Class
    objects for the type mponent$1.dropLocationForPoint(Ljavax/swing/text/
    JTextComponent;Ljava/awt/Point;)Ljavax/swing/TransferHandler$
    DropLocation; used in the signature
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:191)
at javassist.runtime.Desc.getClassObject(Desc.java:43)

I tried to use this:

@PowerMockIgnore( {"javax.management.*","javax.security.*","javax.ws.*"}) 

Eric Lefevre-Ardant

unread,
Nov 20, 2015, 7:14:11 AM11/20/15
to moc...@googlegroups.com
Hi! This seems to be a PowerMock-related question. You should check with the PowerMock team for questions on PowerMock or PowerMockito.
--
You received this message because you are subscribed to the Google Groups "mockito" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mockito+u...@googlegroups.com.
To post to this group, send email to moc...@googlegroups.com.
Visit this group at http://groups.google.com/group/mockito.
To view this discussion on the web visit https://groups.google.com/d/msgid/mockito/3399a505-1ab8-4343-a609-e86ff2670ec6%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

suman anand

unread,
Nov 25, 2015, 4:27:04 AM11/25/15
to mockito
 private void setHeaderDetails(HttpServletRequest request) throws Exception
    {
    UserInfo userInfo = new UserInfo();
    String agentName = request.getHeader("sabrename");
    String sabreAuthorisedUser = request.getHeader("sabreauthuser");
    logger.info("#### AgentName :"+agentName);
    if (agentName == null || SCDOUtil.isEmpty(sabreAuthorisedUser))
    {
        logger.info("Loading Dummy User Info");
        loadDefaultUserInfo(userInfo);

    }
    else
    {
        String pcc = request.getHeader("sabrepcc");
        String agentId = UserCredentialsHelper.extractAgentId(sabreAuthorisedUser);
        logger.info("SABRE PCC FROM HEADER " + pcc);
        String dutyCode = request.getHeader("sabredutycodes");
        String sineID = request.getHeader("sabreauthagentsign");
        if (sineID == null || sineID.equals(""))
        {
        sineID = UserCredentialsHelper.createSineId(agentName);
        }

        boolean flag = UserCredentialsHelper.checkDutyCode(dutyCode);
        if (!flag) flag = UserCredentialsHelper.checkIfCruiseLineUser(pcc);

        String dtyCode = UserCredentialsHelper.getDutyCode(dutyCode);
        boolean isAuthorized = UserCredentialsHelper.isAuthorizedUser(flag, pcc, dutyCode);
        logger.info("IS Authorized " + isAuthorized);
        if (!isAuthorized)
        {
        request.setAttribute("NotAuthorized", "Y");
        if (pcc != null && pcc.length() > 3) request.setAttribute("NotAuthorized", "N");
        }
        String sabreCountry = request.getHeader("sabrecountry");

        userInfo.setSineId(sineID);
        userInfo.setSiteMinderAgentName(UserCredentialsHelper.getTruncatedName(agentName));
        userInfo.setPcc(UserCredentialsHelper.getPcc(pcc, flag));
        userInfo.setFlag(flag);
        userInfo.setDutyCode(dtyCode);
        userInfo.setAgentId(agentId);
        userInfo.setCountryCode(sabreCountry);
       

        logger.info("SABRE NAME FROM HEADER " + agentName);
        logger.info("SABRE DUTYCODE FROM HEADER " + dutyCode);
        logger.info("NAME UCA " + userInfo.getSineId());
        logger.info("PCC UCA " + userInfo.getPcc());
        logger.info("DTYC UCA " + userInfo.getDutyCode());
        logger.info("AGY NAME UCA " + userInfo.getSiteMinderAgentName());
    }

    UserPreferenceBean userPreferenceBean = null;
    try
    {
        userPreferenceBean = AgentPreferenceDataHelper.getUserPreferenceBeanFromDB(userInfo.getAgentId(), userInfo.getPcc());
    }
    catch (Exception e)
    {
        logger.warn("Exception in userPrefernceBean obtained " + "from AgentPreferenceDataHelper.getUserPreferenceBeanFromDB() for agentID =" + userInfo.getAgentId() + " and pcc = " + userInfo.getPcc());
        logger.warn(e.getMessage());
        userPreferenceBean = new UserPreferenceBean();
    }
    catch (Throwable t)
    {
        logger.warn("Exception Throwable in userPrefernceBean obtained " + "from AgentPreferenceDataHelper.getUserPreferenceBeanFromDB() for agentID =" + userInfo.getAgentId() + " and pcc = " + userInfo.getPcc());
        logger.warn(t.getMessage());
        userPreferenceBean = new UserPreferenceBean();
    }

    if (userPreferenceBean == null)
    {
        userPreferenceBean = new UserPreferenceBean();
        userPreferenceBean.setSailRegionSingle("");
        userPreferenceBean.setSailingPerPage("10");
        userPreferenceBean.setNationality("");
        userPreferenceBean.setCitizenShip("");
        userPreferenceBean.setResidence("");
        userPreferenceBean.setPassengerCity("");
        userPreferenceBean.setPhoneNumber("");
        userPreferenceBean.setLogoFilePath("");
        userPreferenceBean.setAgentName(agentName);
        userPreferenceBean.setPriceSortPref("");
    }
    String agentNameDB = userPreferenceBean.getAgentName();
    if (SCDOUtil.isEmpty(agentNameDB))
    {
        userPreferenceBean.setAgentName(userInfo.getSiteMinderAgentName());
    }

    SessionManager.removeAttribute(request.getSession(false), SessionEnum.CRUISEBOOKINGBEAN);
    removeSessionData(request.getSession(false));
    SessionManager.set(request.getSession(false), SessionEnum.USERCREDENTIALS, userInfo);
    //For deep linking user
    GroupRestrictionHelper.checkForRestriction(request, userInfo.getPcc());
    SessionManager.set(request.getSession(false), SessionEnum.CRUISEBOOKINGBEAN, new CruiseBookingBean());
    SessionManager.set(request.getSession(false), SessionEnum.USERPREFERENCE, userPreferenceBean);
    }

    private void loadDefaultUserInfo(UserInfo userInfo)
    {
    userInfo.setSineId("HP6");
    userInfo.setPcc("KK11");
    userInfo.setFlag(true);
    userInfo.setDutyCode("*");
    userInfo.setSiteMinderAgentName("TEST");
    userInfo.setAgentId("062524");
    userInfo.setCountryCode("US");
    return;
    }

    private static void modifySCDOApplicationParams(HttpServletRequest request)
    {
    String userCountry = null;
    if (SessionManager.get(request.getSession(false), SessionEnum.USERCREDENTIALS) != null)
    {
        userCountry = ((UserInfo) SessionManager.get(request.getSession(false), SessionEnum.USERCREDENTIALS)).getCountryCode();
    }

    String region = CacheAccess.getCountryRegionCode(userCountry);

    if (SCDOUtil.isNotEmpty(region) && SCDOHelper.isEuropeLADUser(region))
    {
        SessionManager.set(request.getSession(false), SessionEnum.EMEALADUSER, "Y");
    }
    else
    {
        SessionManager.set(request.getSession(false), SessionEnum.EMEALADUSER, "N");
    }
    }

    public ActionForward postProcess(ActionMapping mapping, Advisory advMessges[], ActionForm form, HttpServletRequest request, HttpServletResponse response)
    {
    logger.info("into releasecabinandbookingaction");
    forwardTo = "";
    LiveConnectExistingbkg aLiveConnectExistingbkg = (LiveConnectExistingbkg) SessionManager.get(request.getSession(false), SessionEnum.LIVECONNECTEXISTINGBKG);
    String NotAuthorized = (String) request.getAttribute("NotAuthorized");
    if (NotAuthorized != null)
    {
        logger.info("UserCredentialsAction :: forwarding to :: /NotAuthorized.do?command="+NotAuthorized);
        if (NotAuthorized.equalsIgnoreCase("Y")) return new ActionForward(("/NotAuthorized.do?command=Y"));
        else return new ActionForward(("/NotAuthorized.do?command=N"));
    }
    // FIXME-Ratnesh change it to read the actual rule than hard-coded one.
    DeepLinkRequestData deepLinkRequestData = (DeepLinkRequestData) SessionManager.get(request.getSession(false), SessionEnum.DEEPLINKREQDATA);
    LiveConnectNewBooking liveConnectNewBooking = (LiveConnectNewBooking) SessionManager.get(request.getSession(false), SessionEnum.LIVECONNECTNEWBOOKING);
    if (aLiveConnectExistingbkg != null && SCDOUtil.isNotEmpty(aLiveConnectExistingbkg.getConfirmationNo())){
        forwardTo = LiveConnectViewHelper.getForwardLive(aLiveConnectExistingbkg);
        logger.info("UserCredentialsAction :: forwarding to :: "+forwardTo);
        return (mapping.findForward(forwardTo));
    }else if (deepLinkRequestData != null && deepLinkRequestData.getTargetPage() != null){
        forwardTo = DeepLinkHelper.getForwardAction(deepLinkRequestData);
        logger.info("UserCredentialsAction :: forwarding to :: "+forwardTo);
        return (mapping.findForward(forwardTo));
    }else if(liveConnectNewBooking!=null && liveConnectNewBooking.getEnableNewCBPlusPath()){
        //This if condition is added for CBPlus
        forwardTo = DeepLinkHelper.getForwardAction(liveConnectNewBooking);
        logger.info("UserCredentialsAction :: forwarding to :: "+forwardTo);
        return (mapping.findForward(forwardTo));
    }else{
        logger.info("UserCredentialsAction :: forwarding to :: /SailAvailSearch.do");
        return new ActionForward(("/SailAvailSearch.do"));
    }

    }
   


can you please hepl me write junit for the below code
#########################################################################################

Eric Lefevre-Ardant

unread,
Nov 25, 2015, 4:40:10 AM11/25/15
to moc...@googlegroups.com
This is not a Mockito-related questions. Please see other channels for answers.

--
You received this message because you are subscribed to the Google Groups "mockito" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mockito+u...@googlegroups.com.
To post to this group, send email to moc...@googlegroups.com.
Visit this group at http://groups.google.com/group/mockito.

suman anand

unread,
Nov 25, 2015, 5:57:12 AM11/25/15
to mockito

could you please provide me respective team email id




On Friday, November 20, 2015 at 4:15:25 PM UTC+5:30, Mark Warner wrote:

Eric Lefevre-Ardant

unread,
Nov 25, 2015, 7:49:57 AM11/25/15
to moc...@googlegroups.com
I do not know, as I've never needed to use PowerMock (which is completely unrelated to Mockito). Feel free to Google it.

--
You received this message because you are subscribed to the Google Groups "mockito" group.
To unsubscribe from this group and stop receiving emails from it, send an email to mockito+u...@googlegroups.com.
To post to this group, send email to moc...@googlegroups.com.
Visit this group at http://groups.google.com/group/mockito.
Reply all
Reply to author
Forward
0 new messages