To integrate Oracle APEX with Google Maps | Spot the Location by Providing Address/Location,
I have followed below steps.
Step 1: Google API Key must be obtained. Get Google API Key.
Step 3: Create static region with static ID: googlemap.
Step 4: Add custom CSS in Inline CSS.
#googlemap {
height: 600px !important;
}
I have followed below steps.
Step 1: Google API Key must be obtained. Get Google API Key.
Step 2: Create static region with page item p1_address (To get address) and region button (For search).
Note: Button action should be "submit page". Page item type should be "text".
Step 4: Add custom CSS in Inline CSS.
#googlemap {
height: 600px !important;
}
Note: Normal Page - Height: 600px; | Modal Dialog - Height: 400px;.
That's it. Happy APExing!!!...
Faced Issues: I would like to share all the issues which i faced when i was integrating Oracle APEX with Google Maps.
Step 5: Add below js in Page HTML Header.
<script>
var map;
function initMap() {
map = new google.maps.Map(document.getElementById('googlemap'), {
center: {
lat: -34.397,
lng: 150.644
},
zoom: 15
});
var geocoder = new google.maps.Geocoder();
geocodeAddress(geocoder, map);
}
function geocodeAddress(geocoder, resultsMap) {
var address = document.getElementById('p1_address').value;
geocoder.geocode({'address': address}, function(results, status) {
if (status === 'OK') {
resultsMap.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
map: resultsMap,
position: results[0].geometry.location
});
var infoWindow = new google.maps.InfoWindow({
content: address
});
google.maps.event.addListener(marker, 'click', function () {
infoWindow.open(map, marker);
});
} else {
alert('Geocode was not successful for the following reason: ' + status);
}
});
}
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=MY_GOOGLE_MAP_API_KEY&libraries=places&callback=initMap" async defer></script>
Note:
p1_address - Run time parameter, to get address.
googlemap - Static ID for that particular region or division.
In the end of code, you can find link,
<script src="https://maps.googleapis.com/maps/api/js?key=MY_GOOGLE_MAP_API_KEY&libraries=places&callback=initMap" async defer></script>
You must replace MY_GOOGLE_MAP_API_KEY with your valid Google MAP API Key.
Output:
Faced Issues: I would like to share all the issues which i faced when i was integrating Oracle APEX with Google Maps.
References:
- https://developers.google.com/maps/documentation/javascript/tutorial
- https://developers.google.com/maps/documentation/javascript/error-messages
- https://developers.google.com/maps/documentation/geocoding/intro
- http://nhasko.blogspot.com/2018/05/oracle-apex-and-google-maps.html
Related Post:
Very clear information, thanks author...
ReplyDelete