Salmon e-commerce solutions


Salmon excels at developing solutions for retailers to interact with customers, suppliers, partners and employees.

Whether retailers are selling direct to consumers or to other businesses, Salmon helps retailers reap the benefits and avoid the pitfalls of e-Commerce. Salmon’s specific area of focus in the e-Commerce arena is the development and implementation of next generation solutions. Solutions that enhance and build upon our clients’ early experiences of embracing the web as an extension to their existing sales channels. From the development of interactive catalogues, billing systems, stock management and personal savings through to fully integrated, multi-lingual, multi-currency electronic trading systems, Salmon has developed an enviable track record of successfully delivering complex e-Commerce solutions for leading organisations.

Every company talks about putting the customer first. At Salmon, however we go one important step further. Our whole business is engineered around the fact that our success is dependent on our customers’ success. It has been this way since 1989.

From initial meetings, through business consultation and project implementation, to ongoing support and maintenance, Salmon listens closely to each of our retail client’s unique needs. We adapt our unique approach to the mitigation of risk in I.T. initiatives, to create the services and solutions to solve our customers’ problems.

It is as a result of this individual attention that Salmon can demonstrate one of the highest customer satisfaction ratings in the I.T. Services industry. It is also why our customers know Salmon as a true partner in their success.


Contact Salmon:

Salmon Ltd
64 Clarendon Road
Watford
Herts
WD17 1DA

+44 (0) 1923 320 000
+44 (0) 1923 320 023

info@salmon.com
www.salmon.com


Back to previous page

Error Page Exception

SRVE0260E: The server cannot use the error page specified for your application to handle the Original Exception printed below.


Original Exception:

Error Message: java.lang.NullPointerException
Error Code: 500
Target Servlet:
Error Stack:
java.lang.NullPointerException
     at com.salmon.ec.utils.CommandContextRequestHelper.getCookie(CommandContextRequestHelper.java:42)
     at com.halfords.callcentre.helpers.CallCentreCookieHelper.isCallCentre(CallCentreCookieHelper.java:28)
     at com.halfords.navigation.FooterDataBean.setPaypalEnabled(FooterDataBean.java:132)
     at com.halfords.navigation.FooterDataBean.populate(FooterDataBean.java:124)
     at com.ibm.commerce.beans.DataBeanManager.directActivate(DataBeanManager.java:651)
     at com.ibm.commerce.beans.DataBeanManager.activate(DataBeanManager.java:358)
     at com.ibm.commerce.beans.DataBeanManager.activate(DataBeanManager.java:564)
     at com.ibm.commerce.beans.DataBeanManager.activate(DataBeanManager.java:407)
     at com.ibm.commerce.taglibs.base.tag.UseBean.doEndTag(UseBean.java:99)
     at com.ibm._jsp._CachedFooterDisplay._jspService(_CachedFooterDisplay.java:521)
     at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:99)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
     at com.ibm.ws.cache.servlet.ServletWrapper.serviceProxied(ServletWrapper.java:307)
     at com.ibm.ws.cache.servlet.CacheHook.handleFragment(CacheHook.java:576)
     at com.ibm.ws.cache.servlet.CacheHook.handleServlet(CacheHook.java:250)
     at com.ibm.ws.cache.servlet.ServletWrapper.service(ServletWrapper.java:259)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1694)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1635)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:149)
     at com.ibm.commerce.webcontroller.JspExecutionServiceLoggingFilter.doFilter(JspExecutionServiceLoggingFilter.java:245)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:80)
     at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:908)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:965)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:508)
     at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:181)
     at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:121)
     at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:262)
     at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.include(WebAppRequestDispatcher.java:732)
     at org.apache.taglibs.standard.tag.common.core.ImportSupport.acquireString(ImportSupport.java:384)
     at org.apache.taglibs.standard.tag.common.core.ImportSupport.doEndTag(ImportSupport.java:220)
     at com.ibm._jsp._builtBySalmon._jspx_meth_c_import_1(_builtBySalmon.java:4479)
     at com.ibm._jsp._builtBySalmon._jspService(_builtBySalmon.java:622)
     at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:99)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
     at com.ibm.ws.cache.servlet.ServletWrapper.serviceProxied(ServletWrapper.java:307)
     at com.ibm.ws.cache.servlet.CacheHook.handleFragment(CacheHook.java:576)
     at com.ibm.ws.cache.servlet.CacheHook.handleServlet(CacheHook.java:250)
     at com.ibm.ws.cache.servlet.ServletWrapper.service(ServletWrapper.java:259)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1694)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1635)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:149)
     at com.ibm.commerce.webcontroller.JspExecutionServiceLoggingFilter.doFilter(JspExecutionServiceLoggingFilter.java:245)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:80)
     at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:908)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:965)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:508)
     at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:181)
     at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:121)
     at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:262)
     at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionProcessor.handleRequest(AbstractJSPExtensionProcessor.java:353)
     at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:374)
     at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
     at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
     at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
     at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
     at com.ibm.commerce.struts.ECActionServlet.processRequest(ECActionServlet.java:231)
     at com.ibm.commerce.struts.ECActionServlet.doGet(ECActionServlet.java:172)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:718)
     at com.ibm.commerce.struts.ECActionServlet.service(ECActionServlet.java:739)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
     at com.ibm.ws.cache.servlet.ServletWrapper.serviceProxied(ServletWrapper.java:307)
     at com.ibm.ws.cache.servlet.CacheHook.handleCacheMiss(CacheHook.java:944)
     at com.ibm.ws.cache.servlet.CacheHook.handleCacheableFragment(CacheHook.java:790)
     at com.ibm.ws.cache.servlet.CacheHook.handleFragment(CacheHook.java:559)
     at com.ibm.ws.cache.servlet.CacheHook.handleServlet(CacheHook.java:250)
     at com.ibm.ws.cache.servlet.ServletWrapper.service(ServletWrapper.java:259)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1694)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1635)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:149)
     at com.ibm.commerce.campaigns.filter.CampaignsFilter.doFilter(CampaignsFilter.java:148)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.ibm.commerce.likeminds.filter.LikeMindsFilter.doFilter(LikeMindsFilter.java:183)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.ibm.commerce.dynacache.filter.CacheFilter$1.run(CacheFilter.java:390)
     at com.ibm.commerce.dynacache.filter.CacheFilter.doFilter(CacheFilter.java:553)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.ibm.commerce.webcontroller.RuntimeServletFilter.doFilterAction(RuntimeServletFilter.java:798)
     at com.ibm.commerce.webcontroller.RuntimeServletFilter.access$0(RuntimeServletFilter.java:585)
     at com.ibm.commerce.webcontroller.RuntimeServletFilter$1.run(RuntimeServletFilter.java:495)
     at com.ibm.commerce.webcontroller.RuntimeServletFilter.doFilter(RuntimeServletFilter.java:520)
     at com.salmon.ec.servlet.SalmonServletFilter.doFilter(SalmonServletFilter.java:59)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.salmon.ec.servlet.RedirectFilter.doFilter(RedirectFilter.java:69)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:80)
     at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:908)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:965)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:508)
     at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:181)
     at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3994)
     at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:276)
     at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:945)
     at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1592)
     at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:191)
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:454)
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:516)
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:307)
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:278)
     at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
     at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
     at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
     at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
     at com.ibm.io.async.AsyncChannelFuture$1.run(AsyncChannelFuture.java:205)
     at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1662)
    


Error Page Exception:

Error Message: javax.servlet.jsp.JspTagException: 500 /HalfordsConsumerDirect/include/styles/style1/CachedFooterDisplay.jsp?storeId=10001&catalogId=10151&langId=-1&userType=G
Error Code: 0
Target Servlet:
Error Stack:
javax.servlet.jsp.JspTagException: 500 /HalfordsConsumerDirect/include/styles/style1/CachedFooterDisplay.jsp?storeId=10001&catalogId=10151&langId=-1&userType=G
     at org.apache.taglibs.standard.tag.common.core.ImportSupport.acquireString(ImportSupport.java:402)
     at org.apache.taglibs.standard.tag.common.core.ImportSupport.doEndTag(ImportSupport.java:220)
     at com.ibm._jsp._builtBySalmon._jspx_meth_c_import_1(_builtBySalmon.java:4479)
     at com.ibm._jsp._builtBySalmon._jspService(_builtBySalmon.java:622)
     at com.ibm.ws.jsp.runtime.HttpJspBase.service(HttpJspBase.java:99)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
     at com.ibm.ws.cache.servlet.ServletWrapper.serviceProxied(ServletWrapper.java:307)
     at com.ibm.ws.cache.servlet.CacheHook.handleFragment(CacheHook.java:576)
     at com.ibm.ws.cache.servlet.CacheHook.handleServlet(CacheHook.java:250)
     at com.ibm.ws.cache.servlet.ServletWrapper.service(ServletWrapper.java:259)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1694)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1635)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:149)
     at com.ibm.commerce.webcontroller.JspExecutionServiceLoggingFilter.doFilter(JspExecutionServiceLoggingFilter.java:245)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:80)
     at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:908)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:965)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:508)
     at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:181)
     at com.ibm.wsspi.webcontainer.servlet.GenericServletWrapper.handleRequest(GenericServletWrapper.java:121)
     at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionServletWrapper.handleRequest(AbstractJSPExtensionServletWrapper.java:262)
     at com.ibm.ws.jsp.webcontainerext.AbstractJSPExtensionProcessor.handleRequest(AbstractJSPExtensionProcessor.java:353)
     at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppRequestDispatcher.java:374)
     at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
     at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
     at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
     at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
     at com.ibm.commerce.struts.ECActionServlet.processRequest(ECActionServlet.java:231)
     at com.ibm.commerce.struts.ECActionServlet.doGet(ECActionServlet.java:172)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:718)
     at com.ibm.commerce.struts.ECActionServlet.service(ECActionServlet.java:739)
     at javax.servlet.http.HttpServlet.service(HttpServlet.java:831)
     at com.ibm.ws.cache.servlet.ServletWrapper.serviceProxied(ServletWrapper.java:307)
     at com.ibm.ws.cache.servlet.CacheHook.handleCacheMiss(CacheHook.java:944)
     at com.ibm.ws.cache.servlet.CacheHook.handleCacheableFragment(CacheHook.java:790)
     at com.ibm.ws.cache.servlet.CacheHook.handleFragment(CacheHook.java:559)
     at com.ibm.ws.cache.servlet.CacheHook.handleServlet(CacheHook.java:250)
     at com.ibm.ws.cache.servlet.ServletWrapper.service(ServletWrapper.java:259)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1694)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1635)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:149)
     at com.ibm.commerce.campaigns.filter.CampaignsFilter.doFilter(CampaignsFilter.java:148)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.ibm.commerce.likeminds.filter.LikeMindsFilter.doFilter(LikeMindsFilter.java:183)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.ibm.commerce.dynacache.filter.CacheFilter$1.run(CacheFilter.java:390)
     at com.ibm.commerce.dynacache.filter.CacheFilter.doFilter(CacheFilter.java:553)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.ibm.commerce.webcontroller.RuntimeServletFilter.doFilterAction(RuntimeServletFilter.java:798)
     at com.ibm.commerce.webcontroller.RuntimeServletFilter.access$0(RuntimeServletFilter.java:585)
     at com.ibm.commerce.webcontroller.RuntimeServletFilter$1.run(RuntimeServletFilter.java:495)
     at com.ibm.commerce.webcontroller.RuntimeServletFilter.doFilter(RuntimeServletFilter.java:520)
     at com.salmon.ec.servlet.SalmonServletFilter.doFilter(SalmonServletFilter.java:59)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.salmon.ec.servlet.RedirectFilter.doFilter(RedirectFilter.java:69)
     at com.ibm.ws.webcontainer.filter.FilterInstanceWrapper.doFilter(FilterInstanceWrapper.java:190)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain.doFilter(WebAppFilterChain.java:125)
     at com.ibm.ws.webcontainer.filter.WebAppFilterChain._doFilter(WebAppFilterChain.java:80)
     at com.ibm.ws.webcontainer.filter.WebAppFilterManager.doFilter(WebAppFilterManager.java:908)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:965)
     at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:508)
     at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:181)
     at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3994)
     at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:276)
     at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:945)
     at com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1592)
     at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:191)
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:454)
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewRequest(HttpInboundLink.java:516)
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:307)
     at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.ready(HttpInboundLink.java:278)
     at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214)
     at com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete(NewConnectionInitialReadCallback.java:113)
     at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:175)
     at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
     at com.ibm.io.async.AsyncChannelFuture$1.run(AsyncChannelFuture.java:205)
     at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1662)