Tomcat 7 config - windows

Just trying to get fancy. I know I can do this by creating an app and putting a getQueryParam into a jsp file and forward like that.
But I wanted to see if this is possible.
I am working on an application that points to an xml datasource. So the URL on the server is simply "/safe" because it uses the app URL to go to (domain.com/safe). What I wanted to see if it was possible to create a mapping in tomcat 7 that allows (localhost/safe) to be forwarded or treated like (domain.com/safe).
so when editing my application locally I don't have to change the httpService back and forth

What you need to configure is virtual hosting. Read about this and the Host container in the official Tomcat documentation.

Related

how to develop/test angular in spring boot without building it

Maybe someone call help me to find a solution.
I have an angular app in a different folder of my git project.
Normally i use ng serve and open the frontend on its dedicated port.
I start the spring boot app on its own port and set a CORS filter to allow it.
However now that we are testing OAUTH i would like the frontend to be served be backend.
My problem is that ng serve is in memory and i dont know what would be the best option to include them into the backend.
I have tried to build them into the backend and then rebuild with mavent but that takes way to long for every small change on the frontend.
You may use a proxy which forwards requests to APIs or UI based on the Path. Something like
http://localhost:8888/api ---> [Proxy Server (localhost:8888)] ---> Spring Boot API (http://localhost:8080
http://proxy-domain.com:proxy-port/ui ---> [Proxy Server (localhost:8888)] ----> Angular App (http://localhost:4200)
For the proxy server, you can use free tools like Fiddler and have a rule there to route based on the URL patters (/api or /ui)

Web application is seemingly not running when deployed in websphere

I have a war file which I deployed and ran in tomcat. Then I deployed it in websphere from admin console. The status of the webapplication is seen as started along with the built-in web applications such as "ivtApp", "query", etc. Now from this link:
Heading
http://pic.dhe.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=%2Fcom.ibm.websphere.nd.doc%2Finfo%2Fae%2Fae%2Frins_portnumber.html
It looks like the port number for web application is 9080 for http. I tried to run the application using the link:
http://{localhost}:9080/spring3HibernateMaven/index
(I am using "{" because this website didn't allow typing localhost)
the context root being spring3HibernateMaven. And I get page not found error in the browser. So I thought there must be something wrong with my web application. Hence I tried to run their web application:
http://{localhost}:9080/ivtApp
Which gives the same error. Even
http://{localhost}:9080/
gives the same error. I assume it should show something for this url as is shown from tomcat.
So how can I run the/any web application in websphere? FYI, I downloaded the latest version of websphere from their website.
Thanks
ivtApp has context path "ivt", so you need to use host:9080/ivt
Btw, you can find context path setting in websphere\application control panel

Service in Silverlight application does not work when deployed

I've created a Silverlight application that uses a service. The service is defined in the web project in that solution. The silverlight application references it and uses it.
Everything works locally on my dev machine when I run the application in Visual Studio.
I note that the url im given from VS is: http://localhost:50453/Default.htm
But when I deploy this (by filesystem copy deploy option) the web page starts and it looks okey except that it seems to have a problem using the service.
In the Silverlight application, if I look at the reference settings the url to the service is: http://localhost:50453/SilverlightService.svc and thats probably whats wrong, as the server that Im deploying to does not have a clue whats on port 50453.
So Im trying to change this port to 80 on my dev machine but Im out of luck. My web project does not have any property where I can change the port. Opened URL and URL is locked at http://localhost:50453 :-/
How can I change the my dev environment to match the production environment with port 80?
For sure you can change the web project's URL in project properties, but this is not a good solution because you'll get the same problems when accessing the SL application from a remote computer.
You need to set the service URL programmatically, like above:
ServiceReference1.Service1Client svc = new ServiceReference1.Service1Client();
Uri serviceUri = new Uri(System.Windows.Browser.HtmlPage.Document.DocumentUri, "Service1.svc");
svc.Endpoint.Address = new System.ServiceModel.EndpointAddress(serviceUri);
This solution uses the same URL that you are using to access the Silverlight Application.

How to Connect to Local JNDI using WAS v8.5

So I have a couple MQs set up in WASv8.5. I have tested these and they work fine, now I need to test some functionality. In order to do this I downloaded the "New" MQJExplorer and I noticed the ability to load JNDI from a context. Now since the Websphere instance is running locally can I just hook directly into the Websphere Context? I tried selecting Websphere Application Server and it gives me an address box starting with
iiop://
I tried using...
iiop://localhost
but that didn't work and neither did
iiop://localhost:9064
I tried looking about iiop and I couldn't really find how to enable it on WebSphere. How can I make this work?
Make sure the port is Bootstrap Port and also you may try adding providerURL under WAS console: Environment > Naming > Name Space Binding.

Location of crossdomain.xml Windows Azure

I need to put a crossdomain.xml file in my Windows Azure Web Role. But where ?
I tried to put it in : F:\sitesroot\0
But my Unity3D Web App says : Exception: Unable to connect, as no valid crossdomain policy was found.
I don't know what I am missing. Unity uses by default port (843).
Where to put the crossdomain.xml
Any help is welcome !
CrossDomainPolicy.xml must be at the root of your application.
If you are using single Web Role just add CrossDomainPolicy.xml at the root of your application and set it up correctly as below:
Depends on how many "sites" sections you have in your role's ServiceDefinition.csdef , you will get that many \sitesroot\0 and \sitesroot\1 and CrossDomainPolicy.xml will be distributed to all depend on your role solution settings.
Once I discussed this in my following blog:
Silverlight front end calling to WCF Service, all in one Windows Azure Web Role Sample
You mentioned port 843, which sounds like it would need the Flash protocol, which is a TCP socket listener on port 843 that responds with the cross domain policy when it receives the text <policy-file-request/>. Do you need to be doing that? Does your app use sockets?
Avkash's answer is correct for where the XML file should go if you just need to serve it via port 80 from your web app, but if you need to do raw sockets, you'll need to be running something on the server that handles that.

Resources